Maven: Gagal membaca artefak kata kunci
Saya berharap ada yang bisa membantu saya dengan masalah saya berjuang dengan.
Ketika saya mencoba untuk membangun proyek saya dari terminal saya mendapatkan error ini:
Failed to read artifact descriptor for com.morrislgn.merchandising.common:test-data-utils:jar:0.3b-SNAPSHOT: Could not find artifact com.morrislgn.merchandising:merchandising:pom:0.3b-SNAPSHOT
Umum.tes-data-utils
jar yang dibuat oleh proyek terpisah dan ruang antara ini dan proyek lain (lain proyek doesn't membangun baik, tapi itu adalah masalah lain).
Saya mampu membangun com.morrislgn.merchandising.umum:test-data-utils
tanpa masalah, aku bisa melihat entri itu masuk dalam .m2
repositori lokal di mesin saya. Saya telah reindexed saya repositori di Eclipse juga.
POM untuk proyek saya memiliki entri ini:
<dependency>
<groupId>com.morrislgn.merchandising.common</groupId>
<artifactId>test-data-utils</artifactId>
<version>0.3b-SNAPSHOT</version>
</dependency>
Yang muncul untuk menjadi benar untuk me - POM doesn't melaporkan setiap kesalahan baik ketika dilihat di Eclipse.
Dapatkah seseorang memberitahu saya apa yang saya hilang di sini atau melakukan hal yang salah?
Anda dapat selalu mencoba
mvn -U instal bersih
-U
memaksa memeriksa diperbarui rilis dan foto pada remote repositori.Masalah ini dapat terjadi jika anda memiliki beberapa anak proyek-proyek yang merujuk kepada orang tua pom dan anda belum menginstal dari orang tua pom direktori (run
mvn install
dari direktori induk). Salah satu anak proyek-proyek yang mungkin tergantung pada saudara proyek dan ketika ia pergi untuk membaca pom dari saudara, itu akan gagal dengan galat yang disebutkan dalam pertanyaan, kecuali jika anda telah menginstal dari orang tua pom direktori setidaknya sekali.Aku hanya berlari ke dalam masalah ini saat memindahkan proyek ke komputer baru. Aku berada di kebiasaan menjalankan perintah dari anak proyek dan tidak't run install pada orang tua.
Punya masalah yang sama dengan IntelliJ IDEA dan setelah bekerja.
File
Pengaturan
Membangun, Eksekusi, Penyebaran
Membangun Alat
dari drop-downMaven
dari drop-downSelalu update foto
check boxJika anda're menggunakan eclipse, klik kanan pada project -> sifat -> Maven dan pastikan bahwa "Mengatasi dependensi dari kerja proyek" tidak diklik.
Semoga ini bisa membantu.
Jika anda menggunakan Eclipse, Klik Kanan pada Proyek anda -> Maven -> Update Proyek. Ini akan membuka Update Maven Project kotak dialog.
Dalam kotak dialog, centang Force Update foto-Foto/Rilis centang & klik OK. (Silakan lihat gambar di bawah)
Ini bekerja untuk saya !
Aku tahu aku'm cukup terlambat untuk percakapan, tapi aku punya masalah ini juga. Saya pikir masalah itu perusahaan saya's firewall. Solusi saya adalah untuk cabut dari jaringan, terhubung ke kami membuka wifi dan kemudian memaksa update melalui Eclipse. Ini diselesaikan semuanya.
Saya memiliki masalah yang sama dengan eclipse mana maven membangun command line bekerja baik-baik saja TAPI coba ini
Kesalahan yang hilang....mengapa saya mvn baris perintah bekerja dengan direktori tersebut dan eclipse .m2eclipse tidak bisa, aku tidak tahu dan itu agak menyebalkan. Proyek saya sekarang bekerja di eclipse lagi.
Saya memecahkan masalah ini dengan menghapus dalam repositori folder di mana kesalahan ini menunjukkan segala sesuatu kecuali .jar dan .pom file.
Aku punya masalah yang sama menggunakan IntelliJ. Aku diselesaikan dengan klik kanan pada pom.xml > Maven > Reimport
"Gagal untuk membaca artefak kata kunci" masalah-masalah yang umumnya menunjukkan adanya masalah dengan ketergantungan's pom file di repository maven. Saya akan menyarankan anda untuk mengecek apakah pom file's nama yang sama dengan nama maven mengharapkan, dan juga untuk memeriksa apakah pom isi file adalah valid.
Bagi saya , itu terkait dengan pengaturan "Pengaturan Pengguna.xml" dalam
Saya memiliki sebuah proyek
Sekarang ada proyek lain yang kami org
(Setiap modul a1, b1 dll. dan Induk proyek A, B memiliki mereka sendiri pom.xml sesuai standar maven aturan-aturan dari orang tua dan anak)
Kedua proyek tersebut diperiksa di lokal saya eclipse (dari SVN). Saya aktif bekerja pada A.
Aku datang untuk tahu bahwa ada adalah sebuah fungsi umum (b4) yang dikembangkan di B dan I yang diperlukan untuk menggunakannya.
Pengembang b4 telah dikerahkan ini b4 modul sebagai artefak di kami org's repositori. Saya termasuk ketergantungan saya modul's POM yaitu a2's pom.xml. Gerhana download reuqired artefak dari repo dan aku bisa mengimpor kelas-kelas di dalamnya.
Sekarang masalah dimulai... Saya perlu memeriksa kode sumber dari b4 untuk beberapa tujuan dan seperti yang saya sudah memiliki B memeriksa di lokal saya eclipse saya diperbarui dari SVN dan memeriksa modul b4. Aku juga berlari pom.xml modul b4 dengan target-target seperti yang bersih, paket dll. Setelah beberapa saat aku finishedd saya coding yang saya butuhkan untuk membuat STOPLES dari saya modul a2. Aku berlari "paket" pada a2's pom.xml dan BAM!! kesalahan n kesalahan a2 modul.. kesalahan Ini juga tidak sangat user friendly. Hanya ada b4's nama untuk yakin dalam log.
Solusi: Setelah mencoba selama bertahun-solusi selama berjam-jam, aku berlari "mvn -U clean install" dari konsol di B's proyek directoty (yaitu di ../codebase/B). Sebagai B adalah orang tua, bersih menginstal perintah berlari untuk semua modul termasuk b4 dan itu berlangsung sukses. Setelah ini aku berlari "mvn -U clean install" untuk orang tua saya proyek yang A. Dan ini bekerja! a2 modul mendapat dihimpun, diinstal, (dikemas kemudian) berhasil.
Di sini yang penting adalah jika b4 di ruang kerja anda tidak hanya menginstal b4. Anda akan perlu untuk bersih-menginstal lengkap B. saya datang untuk solusi ini setelah membaca jawaban dari Zuill
EDIT: Satu hal lagi untuk dicatat di sini bahwa jika saya didn't memiliki proyek B memeriksa di lingkungan Setempat, maka masalah ini tidak mungkin terjadi padaku. Saya cenderung berpikir bahwa hal ini terjadi karena aku telah B memeriksa di lokal saya kerja.
Anda menyebutkan dua yang berbeda groupIds,
com.morrislgn.merchandising.umum
dancom.johnlewis.jec.webpim.umum
. Mungkin ini adalah masalah.Bagi saya, tampaknya benar-benar memiliki masalah dengan ketergantungan POM.
Saya bekerja di sekitar itu dengan menggunakan jitpack virtual repositori, dengan mana anda dapat memasukkan repositori github berdasarkan URL bukannya mereka sendiri POM (yang tampaknya telah salah dalam kasus saya).
Referensi https://stackoverflow.com/questions/5074063/maven-error-failure-to-transfer
Tidak memiliki keberuntungan memperbarui melalui eclipse. Harus menggunakan mvn clean install-U (yang diselesaikan semuanya).
Dalam kasus kami, kesalahan ini muncul karena salah groupId nama sementara beberapa proyek-proyek multi-modul Maven konfigurasi referensi kepada orang lain.
Kami telah agregator proyek (
billing-orang tua
) dengan dua modul (billing-api
,penagihan
):Proyek
penagihan
tergantung padabilling-api
. Jadi dalam nyapom.xml
itu:Kami memutuskan untuk mengganti nama groupId dari
com.perusahaan.tim
untukcom.perusahaan.tim.billing
. Kami mengganti nilai lama pada orang tua'spom.xml
dan di<orang tua>
bagian kedua modul. Tapi lupa untuk update ketergantungan di atas. Jadi kita punya konfigurasi di manapenagihan
referensi proyek lamabilling-api
artefak. Akhirnya paruh membangunpenagihan
modul setelah beberapa waktu dengan kesalahan seperti[ERROR] Gagal mengeksekusi gol pada proyek penagihan: tidak Bisa mengatasi dependensi untuk proyek com.perusahaan.tim.billing:billing:jar:3.5.1-FOTO: Gagal untuk mengumpulkan ketergantungan pada com.perusahaan.tim:penagihan-api:botol:3.5.1-FOTO: Gagal membaca artefak kata kunci untuk com.perusahaan.tim:penagihan-api:botol:3.5.1-FOTO: Kegagalan untuk menemukan <orang tua dari com.perusahaan.tim:penagihan-proyek induk yang tidak tersedia lagi>
terlepas dari kenyataan bahwa
billing-api
modul membangun tanpa kesalahan.Solusi 1: ubah nama
groupId
diketergantungan
juga.Solusi 2: ganti
groupId
oleh${proyek.groupId}
properti seperti ini:Kesimpulan. Jadi saran saya jika anda menemukan kesalahan dalam multi-konfigurasi modul akan sama: benar-benar memeriksa
groupId
danartifactId
dari ketergantungan pada tetangga modul.Aku punya masalah yang sama untuk sementara waktu dan meskipun melakukan
mvn -U clean install
masalah tidak mendapatkan soal!Akhirnya aku memecahkan masalah dengan menghapus seluruh
.m2
folder dan kemudian restart IDE dan masalah itu hilang!Jadi kadang-kadang masalah akan naik karena beberapa yang tidak kompatibel atau masalah di anda lokal repository maven.
Menavigasi melalui shell dalam folder proyek anda dan jalankan perintah berikut:
sh mvn -U clean install
Biasanya ini harus sudah memecahkan masalah anda.
Jika anda melihat pesan seperti ini:
Kemudian jalankan:
sh ekspor MAVEN_OPTS=-Dhttps.protokol=TLSv1,TLSv1.1,TLSv1.2
diikuti oleh:
sh mvn -U clean install
lagi untuk akhirnya update anda ketergantungan.Setelah itu melakukan bersih maven membangun:
sh maven instal bersih
Saya punya masalah yang sama. Dalam kasus saya, versi testng di saya .m2/repositori folder korup, tapi ketika saya dihapus & melakukan maven update lagi, semuanya bekerja dengan baik.