Apa itu artefak dan mengapa Maven membutuhkannya?
maven-metadata.xml
dan file yang dipanggil <artifactId>-<version>.pom
. Kedua file tersebut memiliki beberapa skema dan semantik tidak berdokumen.
Apa itu artefak dan mengapa Maven membutuhkannya?
maven-metadata.xml
dan file yang dipanggil <artifactId>-<version>.pom
. Kedua file tersebut memiliki beberapa skema dan semantik tidak berdokumen.
Jawaban:
Artefak adalah file, biasanya JAR, yang akan ditempatkan ke repositori Maven.
Build Maven menghasilkan satu atau lebih artefak, seperti JAR yang dikompilasi dan JAR "sumber".
Setiap artefak memiliki ID grup (biasanya nama domain terbalik, seperti com.example.foo), ID artefak (hanya nama), dan string versi. Ketiganya bersama-sama mengidentifikasi artefak secara unik.
Ketergantungan proyek ditentukan sebagai artefak.
Dalam istilah perangkat lunak umum, " artefak " adalah sesuatu yang dihasilkan oleh proses pengembangan perangkat lunak, apakah itu dokumentasi terkait perangkat lunak atau file yang dapat dieksekusi.
Dalam terminologi Maven, artefak adalah output yang dihasilkan dari maven membangun, umumnya jar
atau war
atau lainnya file eksekusi. Artefak dalam pakar diidentifikasi oleh sistem koordinat groupId, artifactId, dan versi. Maven menggunakan groupId
, artifactId
dan version
untuk mengidentifikasi dependensi (biasanya file jar lainnya) yang diperlukan untuk membangun dan menjalankan kode Anda.
Saya tahu ini adalah utas kuno tetapi saya ingin menambahkan beberapa nuansa.
Ada artefak Maven, artefak manajer repositori dan kemudian ada Maven Artifact
s.
Artefak Maven sama seperti komentator / responden lain mengatakan: itu adalah hal yang diludahkan dengan membangun proyek Maven. Itu bisa berupa .jar
file, atau .war
file, atau .zip
file .dll
, atau apa pun yang Anda miliki.
Artefak manajer repositori adalah hal yang dikelola oleh manajer repositori. Manajer repositori pada dasarnya adalah layanan penamaan yang sangat berkinerja untuk perangkat lunak dan perpustakaan yang dapat dieksekusi. Manajer repositori tidak peduli dari mana artefaknya berasal (mungkin berasal dari build Maven, atau file lokal, atau build Ant, atau kompilasi dengan tangan ...).
A Maven Artifact
adalah kelas Java yang mewakili jenis "nama" yang akan direferensikan oleh manajer repositori menjadi artefak manajer repositori. Ketika digunakan dalam pengertian ini, sebuah Artifact
hanya nama dimuliakan terdiri dari bagian seperti groupId
, artifactId
, version
, scope
, classifier
dan sebagainya.
Untuk menyatukan semuanya:
Artifact
s melalui <dependency>
unsur - unsurnya.Artifact
ke dalam file dengan menginstruksikan manajer repositori untuk mengirimkannya beberapa artefak manajer repositori yang sesuai dengan internal Artifact
.Semoga itu bisa membantu.
mvn install
, orang mencoba mencari tahu apa yang harus dimasukkan dalam entri itu. Jadi nama lengkap guci itu untuk apa -DartifactId=YOUR_ARTIFACT_ID
, apakah itu benar? Nama file jar lengkap dengan versi dan .jar? Tampaknya apa yang Anda katakan tetapi akan membantu beberapa orang menjadi sangat eksplisit. Jawaban lain mendekati ini tapi saya pikir Anda yang terbaik.
Maven mengelola proyeknya.
Seorang artifact
pakar adalah sumber daya yang dihasilkan oleh proyek pakar. Setiap proyek pakar dapat memiliki persis satu artifact
seperti jar, war, ear
, dll
. File konfigurasi proyek "pom.xml"
menjelaskan bagaimana artefak dibangun, bagaimana tes unit dijalankan, dll. Umumnya proyek perangkat lunak yang dibangun dengan pakar terdiri dari banyak proyek pakar yang membangun artefak (misalnya toples) ) yang merupakan produk.
Misalnya
Root-Project // produces no artifact, simply triggers the build of the other projects
App-Project // The application, that uses the libraries
Lib1-Project // A project that creates a library (jar)
Lib2-Project // Another library
Doc-Project // A project that generates the user documentation from some resources
Artefak Maven tidak terbatas pada sumber daya java. Anda dapat menghasilkan sumber daya apa pun yang Anda butuhkan. Misalnya dokumentasi, situs proyek, arsip zip, perpustakaan asli, dll.
Setiap proyek pakar memiliki pengidentifikasi unik yang terdiri dari [groupId, artifactId, version]
. Ketika proyek pakar membutuhkan sumber daya dari proyek lain, ketergantungan dikonfigurasi di dalamnya pom.xml
menggunakan pengidentifikasi yang disebutkan di atas. Maven kemudian secara otomatis menyelesaikan dependensi ketika membangun dipicu. Artefak dari proyek yang diperlukan kemudian dimuat baik dari lokal repository
, yang merupakan direktori sederhana di rumah pengguna Anda, atau dari repositori (jauh) lain yang ditentukan dalam Anda pom.xml
.
Q. Apa Artefak pada pakar?
ANS: ARTIFACT adalah JAR, (PERANG atau TELINGA), tetapi bisa juga sesuatu yang lain. Setiap artefak memiliki,
Q. Mengapa Maven membutuhkannya?
Jawab: Maven digunakan untuk membuatnya tersedia untuk aplikasi kita.
-DartifactId=YOUR_ARTIFACT_ID
ketika menjalankan mvn install, hanya sebuah saran :)
Untuk pakar, proses membangun diatur sebagai satu set artefak. Artefak meliputi:
Artefak hidup dalam repositori.
biasanya kita berbicara Terminologi Maven tentang ID Grup, Artefak Id dan Versi Snapshot
Id Grup: identitas grup proyek Id Artifact: identitas proyek Versi snapshot: versi yang digunakan oleh proyek.
Artefak hanyalah beberapa file yang dihasilkan seperti Jar, War, Ear ....
hanya mengatakan Artefak hanyalah paket.