Tata Letak Direktori Standar Apache Maven

1. Perkenalan

Apache Maven adalah salah satu alat build paling populer untuk proyek Java. Selain dari hanya mendesentralisasikan dependensi dan repositori, mempromosikan struktur direktori yang seragam di seluruh proyek juga merupakan salah satu aspek pentingnya.

Dalam artikel singkat ini, kita akan menjelajahi tata letak direktori standar dari proyek Maven pada umumnya.

2. Tata Letak Direktori

Proyek Maven tipikal memiliki file pom.xml dan struktur direktori berdasarkan konvensi yang ditentukan:

└───maven-project ├───pom.xml ├───README.txt ├───NOTICE.txt ├───LICENSE.txt └───src ├───main │ ├───java │ ├───resources │ ├───filters │ └───webapp ├───test │ ├───java │ ├───resources │ └───filters ├───it ├───site └───assembly

Tata letak direktori default dapat diganti menggunakan deskriptor proyek, tetapi ini jarang terjadi dan tidak disarankan.

Melanjutkan artikel ini, kami akan mengungkap detail lebih lanjut tentang setiap file standar dan subdirektori.

3. Direktori Root

Direktori ini berfungsi sebagai root dari setiap proyek Maven.

Mari kita lihat lebih dekat file dan subdirektori standar yang biasanya ditemukan di root:

  • maven-project / pom.xml - mendefinisikan dependensi dan modul yang diperlukan selama siklus proses build proyek Maven
  • maven-project / LICENSE.txt - informasi lisensi proyek
  • maven-project / README.txt - ringkasan proyek
  • maven-project / NOTICE.txt - informasi tentang pustaka pihak ketiga yang digunakan dalam proyek
  • maven-project / src / main - berisi kode sumber dan sumber daya yang menjadi bagian dari artefak
  • maven-project / src / test - menampung semua kode dan resource pengujian
  • maven-project / src / it - biasanya disediakan untuk pengujian integrasi yang digunakan oleh Maven Failsafe Plugin
  • maven-project / src / site - dokumentasi situs yang dibuat menggunakan Maven Site Plugin
  • maven-project / src / assembly - konfigurasi perakitan untuk binari pengemasan

4. src / main Directory

Seperti namanya, src / main adalah direktori terpenting dari proyek Maven. Apa pun yang seharusnya menjadi bagian dari artefak, baik itu kendi atau perang , harus ada di sini.

Subdirektorinya adalah:

  • src / main / java - Kode sumber Java untuk artefak
  • src / main / resources - file konfigurasi dan lainnya seperti file i18n , file konfigurasi per lingkungan, dan konfigurasi XML

  • src / main / webapp - untuk aplikasi web, berisi sumber daya seperti JavaScript, CSS, file HTML, template tampilan, dan gambar
  • src / main / filter - berisi file yang memasukkan nilai ke dalam properti konfigurasi di folder sumber daya selama fase pembuatan

5. src / test Directory

Direktori src / test adalah tempat pengujian tiap komponen dalam aplikasi berada.

Perhatikan bahwa tidak ada direktori atau file ini yang akan menjadi bagian dari artefak. Mari kita lihat subdirektorinya:

  • src / test / java - Kode sumber Java untuk pengujian
  • src / test / resources - file konfigurasi dan lainnya yang digunakan oleh pengujian
  • src / test / filter - berisi file yang memasukkan nilai ke dalam properti konfigurasi di folder resource selama fase pengujian

6. Kesimpulan

Pada artikel ini, kami melihat tata letak direktori standar untuk proyek Apache Maven.

Beberapa contoh struktur proyek Maven dapat ditemukan di proyek GitHub.