Apa yang dilakukannya
Maven adalah "alat manajemen bangun", ini untuk menentukan bagaimana .java
file Anda dikompilasi .class
, dikemas ke dalam .jar
(atau .war
atau .ear
) file, (sebelum / sesudah) diproses dengan alat, mengelola CLASSPATH
, dan semua jenis tugas yang diperlukan untuk bangun proyek Anda. Ini mirip dengan Apache Semut atau Gradle atau Makefiles di C / C ++, tetapi berusaha sepenuhnya mandiri di dalamnya bahwa Anda tidak perlu memerlukan alat atau skrip tambahan dengan memasukkan tugas umum lainnya seperti mengunduh & menginstal perpustakaan yang diperlukan dll.
Ini juga dirancang di sekitar tema "build portability", sehingga Anda tidak mendapatkan masalah memiliki kode yang sama dengan buildscript yang sama bekerja pada satu komputer tetapi tidak pada yang lain (ini adalah masalah yang diketahui, kami memiliki VM Windows 98 mesin karena kami tidak bisa mendapatkan beberapa aplikasi Delphi kami yang sedang dikompilasi di tempat lain). Karena itu, ini juga merupakan cara terbaik untuk mengerjakan proyek antara orang-orang yang menggunakan IDE berbeda karena skrip Ant yang dihasilkan IDE sulit untuk diimpor ke IDE lain, tetapi semua IDE saat ini memahami dan mendukung Maven ( IntelliJ , Eclipse , dan NetBeans ). Bahkan jika Anda tidak menyukai Maven, itu akhirnya menjadi titik acuan untuk semua alat bangunan modern lainnya.
Kenapa Anda harus menggunakannya
Ada tiga hal tentang Maven yang sangat baik.
Maven akan (setelah Anda menyatakan mana yang Anda gunakan) mengunduh semua perpustakaan yang Anda gunakan dan perpustakaan yang mereka gunakan untuk Anda secara otomatis. Ini sangat bagus, dan membuat berurusan dengan banyak perpustakaan sangat mudah. Ini memungkinkan Anda menghindari "neraka ketergantungan" . Mirip dengan Apache Ant's Ivy .
Ini menggunakan " Convention over Configuration " sehingga secara default Anda tidak perlu mendefinisikan tugas yang ingin Anda lakukan. Anda tidak perlu menulis langkah "kompilasi", "tes", "paket", atau "bersih" seperti yang harus Anda lakukan di Ant atau Makefile. Cukup letakkan file di tempat-tempat di mana Maven mengharapkannya dan itu akan berhasil.
Maven juga memiliki banyak plug-in bagus yang dapat Anda instal yang akan menangani banyak tugas rutin mulai dari menghasilkan kelas Java dari skema XSD menggunakan JAXB hingga mengukur cakupan pengujian dengan Cobertura . Cukup tambahkan mereka ke Anda pom.xml
dan mereka akan berintegrasi dengan semua hal lain yang ingin Anda lakukan.
Kurva pembelajaran awal curam, tetapi (hampir) setiap pengembang Java profesional menggunakan Maven atau keinginan yang mereka lakukan. Anda harus menggunakan Maven pada setiap proyek walaupun tidak heran jika Anda perlu waktu untuk membiasakan diri dengannya dan bahwa kadang-kadang Anda berharap dapat melakukan hal-hal secara manual, karena mempelajari sesuatu yang baru terkadang menyakitkan. Namun, begitu Anda benar-benar terbiasa dengan Maven, Anda akan menemukan bahwa pengelolaan gedung hampir tidak memerlukan waktu sama sekali.
Bagaimana Memulai
Tempat terbaik untuk memulai adalah " Maven dalam 5 Menit ". Ini akan membuat Anda mulai dengan proyek yang siap Anda buat kode dengan semua file dan folder yang diperlukan (ya, saya sarankan menggunakan arketipe quickstart, setidaknya pada awalnya).
Setelah Anda mulai, Anda akan membutuhkan pemahaman yang lebih baik tentang bagaimana alat ini dimaksudkan untuk digunakan. Untuk itu " Better Builds with Maven " adalah tempat yang paling teliti untuk memahami nyali bagaimana kerjanya, " Maven: The Complete Reference " lebih mutakhir. Baca yang pertama untuk memahami, tetapi kemudian gunakan yang kedua untuk referensi.