Di Java Bagaimana Cara Membuat file Arsip .jar / .tar.gz / .zip menggunakan maven-assembly-plugin? Tutorial Proyek Maven dan Perusahaan

Diterbitkan: 2020-10-07
all-in-one-tips-and-tutorial-on-Apache-maven-build-Java-enterprise-project-using-maven

Maven cukup luar biasa. Dengan begitu banyak plugin, ini adalah salah satu Best Java Build tool di pasaran saat ini.

Saya menggunakannya di semua proyek saya dan sangat bergantung padanya. Membangun kemungkinan tidak terbatas. Beberapa waktu yang lalu saya telah menulis tutorial yang berbeda pada begitu banyak plugin maven lainnya dan kali ini kita akan membahas maven-assembly-plugin .

Plugin Majelis Maven bergantung pada deskriptor Majelis yang disediakan untuk mendikte eksekusinya.

Berikut adalah daftar tutorial plugin maven sebelumnya:

  • maven-war-plugin – Buat file .war proyek.
  • maven-resources-plugin , maven-dependency-plugin & maven-jar-plugin – Bangun Proyek Java termasuk semua Dependensi?
  • maven-shade-plugin – Buat Java+Spring Based executable .jar dengan semua Dependensi, Properti, dan Sumber Daya yang Diperlukan.

Apakah Anda memiliki pertanyaan di bawah ini? Tutorial ini juga akan berhasil.

  • Bagaimana cara membuat file jar dengan Maven?
  • Cara menggunakan maven untuk membuat file jar dengan dependensi
  • Gunakan pom.xml untuk membuat toples
  • Cara terbaik untuk membuat maven jar tanpa ketergantungan
  • Cara membuat maven jar termasuk dependensi

Mari kita mulai dengan maven-assembly-plugin

Langkah 1

Buat proyek Maven Baru di lingkungan Eclipse. Beri nama sebagai CrunchifyMavenBuildPlugins . Jika Anda memiliki Proyek Web Dinamis atau Proyek Java, maka dengan menggunakan langkah-langkah ini Anda dapat mengonversi proyek menjadi proyek pakar. Setelah mengonversi proyek ke Maven, Anda akan melihat file pom.xml yang dihasilkan yang kita perlukan untuk tutorial ini.

Berikut adalah struktur proyek saya. Saya menggunakan proyek saya yang sudah ada yang memiliki total 8 java files di bawah paket /src/com/crunchify/tutorials .

plugin maven assembly - Tutorial Crunchify

Langkah 2

Buka file pom.xml proyek Anda tambahkan <plugin></plugin> baru terutama line 28 to 38 .

Langkah-3

Buat file baru crunchify.xml dan letakkan di bawah /src/com/crunchify/assembly package. Kami telah merujuk file ini di file pom.xml di atas.

Di sini kami mengekspor proyek kami ke dalam 3 <formats>

  • tar.gz
  • ritsleting
  • ter

Tag <directory> menunjukkan bahwa – dapatkan semuanya di bawah paket src/com/crunchify/tutorial dan letakkan di bawah folder crunchify-output yang disebutkan di bawah <outputDirectory> .

Jika Anda ingin memasukkan semua konten seperti /src atau /resource folder maka Anda dapat menggunakan variasi yang berbeda di bawah ini:

  1. <directory> src/com/crunchify/tutorial </directory>
  2. <direktori> src </direktori> : semuanya di bawah folder src
  3. <direktori> resources </direktori> : semuanya di bawah folder sumber daya
  4. <direktori> / </direktori> : semuanya

Langkah-4

Klik kanan pada proyek CrunchifyMavenBuildPlugins => Run As => Maven build

Klik Kanan Maven dan Bangun Bersih - Crunchify
  • Memberikan Tujuan sebagai clean assembly:assembly
  • Klik Apply
  • Klik Run
Buat Majelis menggunakan perintah Eclipse build

Langkah-5

Anda akan melihat pesan BUILD SUCCESS di konsol.

Langkah-6

NOTE: Anda tidak perlu melakukan langkah ini.

tarLongFileMode untuk deskriptor penerapan pakar - plugin perakitan pakar

Apakah Anda mendapatkan kesalahan ini? Jika Anda melihat pesan kesalahan ini saat membangun perakitan maka Anda harus menambahkan baris di bawah ini ke file pom.xml.

Saya mendapatkan kesalahan di atas pada upaya pertama saya. Jadi sudah menambahkan tarLongFileMode ke file pom.xml di atas.

Langkah-7

Sekarang how to verify ? Silakan buka folder target proyek Anda dan jalankan perintah di bawah ini untuk melihat .tag.gz file contents Anda.

bash-3.2$ tar zxvf CrunchifyMavenBuildPlugins-0.0.1-SNAPSHOT-bundle.tar.gz

plugin maven assembly - verifikasi hasil - crunchify

Beri tahu saya jika Anda memiliki pertanyaan dan menghadapi masalah dalam menjalankan ini.