Saya telah menginstal yang terbaru maven-3.0.4
di Windows 7 :
Detail penginstalan adalah sebagai berikut:
Jalur Penginstalan:
C:\apache-maven-3.0.4
Variabel Lingkungan adalah:
M2_HOME C:\apache-maven-3.0.4\apache-maven\src
JAVA_HOME C:\Program Files\Java\jdk-1.7.0_04
Variabel jalur yang ditambahkan adalah:
%M2_HOME%\bin;%JAVA_HOME%\bin;
Di jendela perintah itu menunjukkannya seperti ini:
C:\>java -version
java version "1.7.0_04"
Java(TM) SE Runtime Environment (build 1.7.0_04-b22)
Java HotSpot(TM) Client VM (build 23.0-b21, mixed mode, sharing)
C:\>mvn -version
Error: Could not find or load main class org.codehaus.plexus.classworlds.launcher.Launcher
Ini adalah satu-satunya versi di maven yang diinstal di PC saya dan solusi yang diberikan di banyak blog yang merujuk pada penghapusan M2_HOME
variabel lingkungan sebelumnya tidak valid.
Saya telah membaca dan mencoba semua solusi yang diberikan di blog seperti:
tapi masih belum bisa mendapatkannya. Apa yang mungkin saya lewatkan dalam semua ini? Terima kasih sebelumnya.
zip
dan rusak. Diganti dengan.tar.gz
dan berhasil. Jadi, jikaM2_HOME
disetel dengan benar, coba periksa apakah yang Anda unduh sudah benar.Jawaban:
Saya mengalami masalah ini juga, dan menemukan artikel ini . Untuk Maven3, mengubah nama variabel lingkungan saya dari M2_HOME menjadi M3_HOME berhasil. Saya menggunakan Mac yang menjalankan OSX 10.9 dengan JDK 1.7. Semoga ini membantu.
Catatan: Hapus M2_HOME, jika sudah disetel. Misalnya:
unset M2_HOME
sumber
unset M2_HOME
.Meskipun pertanyaan sudah terjawab, saya ingin menambahkannya, jika Anda mendapatkan kesalahan yang disebutkan di atas, pastikan Anda telah mengunduh file Biner .
File sumber hanya boleh diunduh jika Anda adalah pengguna mahir dan Anda tahu cara menanganinya.
Saya memiliki cukup banyak orang yang mengunduh file yang salah, senior dan junior
sumber
Saya mengalami masalah yang sama dan dapat menyelesaikannya dengan mengulangi Variabel Lingkungan dengan hati-hati:
Juga, saya membuat mereka semua Variabel Sistem , bukan Variabel Pengguna seperti yang dikatakan instruksi Maven. Saat kamu
echo %Path%
Pastikan Anda dapat melihat variabel% M2% dan% JAVA_HOME% benar-benar diperluas, yaitu:
C:\Users\afairchild>echo %Path% C:\Program Files\Apache Software Foundation\apache-maven-3.0.4\bin;C:\Program Files\Java\jdk1.7.0_09\bin; [etc]
sumber
M2
variabel lingkungan digunakan? Saya hanya punyaJAVA_HOME
danM2_HOME
.M2
Variabel lingkungan terkadang digunakan untuk menunjukkan%M2_HOME\bin%
jalur, yang kemudian ditambahkan ke%Path%
variabel lingkungan. Ini diperlukan ketika file batch Mavenmvn.bat
tidak dapat ditemukan dalam%Path%
entri standar yang ditentukan. Kasus penggunaan tipikal adalah direktori instalasi non-standar untuk Maven.Memiliki masalah ini pada dua pemasangan Ubuntu 12.04 yang berbeda, meskipun pemasangan dilakukan oleh apt-get. Masalahnya adalah M2_HOME.
Diperbaiki dengan:
export M2_HOME=/usr/share/maven
sumber
export M2_HOME=/usr/share/maven
. Seperti yang ditunjukkan @jimkont, terkadang maven2, atau maven3 (jika Anda menginstal maven3, tentu saja).Saya yakin kesalahan ini disebabkan karena mengunduh SRC, bukan BINARY dari situs Maven. Harap pastikan untuk mengunduh Binary zip.
Karena jalur di bawah ini, Anda hanya akan mendapatkan ketika Anda mengunduh SRC:
sumber
Sepertinya Anda menginstal (mengekstrak) file sumber, bukan biner berdasarkan informasi jalur Anda. Coba instal binari sebagai gantinya dan ikuti jawaban poster lainnya.
sumber
Nah, saya punya masalah ini dan setelah melihat posting ini dan khususnya jawaban khmarbaise saya perhatikan
M2_HOME
ituD:\workspace\apache-maven-3.1.0-bin\apache-maven-3.1.0\bin
dan kemudian saya mengadu ke
D:\workspace\apache-maven-3.1.0-bin\apache-maven-3.1.0
Saya ingin menyebutkan bahwa saya menggunakan windows 7 (x64)
sumber
Solusi untuk versi Maven yang lebih baru sangatlah mudah. Saya menggunakan OS X ElCap, 10.11.6 dan ditingkatkan ke Maven 3.3.9. Saya memiliki masalah yang sama dengan kesalahan "
Could not find ...org.codehaus.plexus...
". Tautan yang disediakan di sini menawarkan solusi dalam komentar oleh McKamey - cukup hapus M2_HOME (unset M2_HOME
). Setelah saya mencobanya, semuanya bekerja seperti yang diharapkan.Ini dapat dikonfirmasi dengan mengunjungi
Maven install page
: "Tambahkan direktori bin dari direktori yang dibuat apache-maven-3.3.9 ke variabel lingkungan PATH" - sama sekali tidak menyebutkan M2_HOME atau M3_HOME.sumber
Anda harus mengubah lokasi M2_HOME menjadi berikut:
set M2_HOME=C:\apache-maven-3.0.4\apache-maven
Selain itu, penginstalan JDK terlihat lebih seperti JRE daripada JDK. Untuk Maven Anda membutuhkan JDK dan BUKAN JRE.
sumber
Saya menemukan masalah serupa di mac OSX saya. Setelah serangkaian percobaan dan kesalahan, saya akhirnya menyelesaikannya.
~/.bash_profile
Penampilan saya seperti iniexport M2_HOME=/Users/xyz/maven-3.x/bin export PATH=$PATH:$M2_HOME
dan ketika saya mencoba
echo M2_HOME
dari terminal, itu menunjukkan kepada saya jalur yang benar tetapi ketika saya mencoba untuk menjalankan perintah maven sepertimvn clean
ataumvn install
, itu selalu memberikan masalah yang samaSaya memecahkan masalah ini dengan mengubah saya
M2_HOME
menjadi iniexport M2_HOME=/Users/xyz/maven-3.x export PATH=$PATH:$M2_HOME/bin
Dan voila! Ini mulai bekerja! Cukup dengan memindahkan posisi
/bin
dari M2_HOME ke depanPATH
sumber
Pastikan Anda telah mengunduh arsip zip Biner (apache-maven-3.5.0-bin.zip), bukan arsip zip Sumber. Kemudian tambahkan direktori bin dari direktori yang dibuat apache-maven-3.5.0 ke variabel lingkungan PATH.
sumber
Untuk sebagian besar masalah penyiapan Maven seperti "Tidak dapat menemukan atau memuat kelas utama ...", mulailah dengan langkah-langkah di bawah ini untuk melihat apakah itu memperbaiki:
kemudian...
sumber
Buka terminal baru dan lakukan tindak lanjut
M2_HOME=/Users/macbook/apache-maven-3.6.1 //Set where maven is M2=$M2_HOME/bin //Set home as bin export PATH=$M2:$PATH //Place the new path
Lalu ketik
Anda dapat mengatur ini
./bash_profile
untuk melakukannya secara otomatis setiap kali Anda menjalankan terminalsumber
Saya memiliki masalah yang sama. Saya memiliki kotak Windows xp dan ketika saya mengetik
mvn -version
pada prompt baris perintah, saya mendapat pesan kesalahan yang ditakuti"Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/plexus/classworlds/launcher/Launcher"
Saya mengonfirmasi bahwa
M2_HOME
variabel saya disetel ke jalur tempat Maven diinstal pada pc dan bahwaecho %path%
bahwa Maven telah di jalur saya.Saya telah mencari solusi selama berjam-jam ketika saya menemukan solusi saya (saya mengatakan solusi saya karena saya tahu ini mungkin tidak akan menjadi solusi untuk semua orang yang mendapatkan kesalahan yang sama).
Saya menyalin jalur yang ditetapkan ke
M2_HOME
variabel saya . Saya membuka jendela cmd dan mengetik cd dan menempelkan jalur yang saya dapatkan dariM2_HOME
variabel saya . Pada saat itu saya tahu bahwa jalur tersebut benar karena jalur tersebut ditampilkan di jendela. Pada titik ini saya memasukkan perintah dir dan yang mengejutkan saya, saya mendapat kesalahan File Not Found.Saya pergi ke jalur itu melalui Explorer dan cukup yakin ada file yang ada. Saya perhatikan bahwa foldernya memudar, tetapi saya dapat mengaksesnya dan melihat file di dalam setiap folder (saya memiliki hak admin di pc saya). Saya melihat properti folder induk untuk Maven dan melihat bahwa kotak Tersembunyi telah dicentang. Saya menghapus cek dan menerapkan dan mencoba perintah dir saya lagi dengan sukses.
Selanjutnya saya mencoba
mvn –version
perintah itu lagi, tetapi kali ini saya mendapatkan kembali hasil yang diharapkan.C:\>mvn -version Apache Maven 3.0.3 (r1075438; 2011-02-28 11:31:09-0600) Maven home: C:\Program Files\apache-maven-3.0.3 Java version: 1.5.0_16, vendor: Sun Microsystems Inc. Java home: C:\Java\jdk1.5.0_16\jre Default locale: en_US, platform encoding: Cp1252 OS name: "windows xp", version: "5.1", arch: "x86", family: "windows"
Akhirnya saya membuat file jar dan perang dan aplikasi web saya berjalan dengan sukses di Tomcat lokal saya.
Saya harap ini membantu beberapa dari Anda di luar sana.
sumber
menginstal versi biner maven memperbaiki masalah
apache-maven-3.6.1-bin.zip
sumber
Selain apa yang telah ditunjukkan @khmarbaise, saya pikir Anda salah mengetik JAVA_HOME Anda. Jika Anda telah menginstal di lokasi default, maka seharusnya tidak ada "-" (tanda hubung) antara jdk dan 1.7.0_04. Jadi itu akan terjadi
JAVA_HOME C:\Program Files\Java\jdk1.7.0_04
sumber
Untuk orang lain yang mungkin mengalami ini, jangan lupa untuk memeriksa ~ / .mavenrc untuk pengaturan M2_HOME atau JAVA_HOME.
sumber
Coba unduh binary zip (misalnya Maven 3.0.5 (Binary zip)) alih-alih sumber lengkap di situs resmi maven. Pastikan juga bahwa baris perintah mengenali perintah java dan javac. Saya perhatikan bahwa zip Sumber Maven tidak menyertakan pustaka apa pun di folder lib tetapi Binary zip memilikinya + di folder boot yang dimilikinya plexus-classworlds-2.4.jar. Mungkin masalahnya adalah tidak adanya perpustakaan ini. Pokoknya itu membantu saya jadi M2_HOME saya adalah: C: \ Program Files \ Java \ apache-maven-3.0.5 dan di PATH saya meletakkan: C: \ Program Files \ Java \ apache-maven-3.0.5 \ bin.
sumber
Saya menemukan masalah ini di centOS saya disebabkan oleh "Oracle Java diganti oleh gcj", setelah mengubah java default menjadi "Oracle Java", masalah tersebut teratasi.
alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- * 1 /usr/lib/jvm/jre-1.5.0-gcj/bin/java + 2 /usr/java/jdk1.7.0_67/bin/java
sumber
Sepertinya Anda telah menginstal file Sumber (Karena
src
hanya datang dalam File Sumber dan kami tidak membutuhkannya). Coba instal File Biner dari sana . Dan kemudian atur variabel lingkungan seperti yang dijelaskan di sana . Ini berhasil untuk saya. Dan saya yakin ini juga akan berhasil untuk Anda.sumber
Saya pikir Anda mengunduh versi yang salah. Saya menemui masalah ini sekarang, tidak ada metode yang berfungsi setelah mencari dan mencari. Akhirnya saya menemukan bahwa maven yang saya download adalah Source zip archive . Setelah saya mengubah ke arsip zip Biner , semuanya baik-baik saja.
sumber
Saya juga menghadapi masalah serupa. Tetapi dalam kasus saya, saya menggunakan folder apache-maven-3.3.3-src di variabel jalur. Kemudian saya mengoreksi mereka dengan jalur yang benar dari folder apache-maven-3.3.3-bin. Ini menyelesaikan masalah. Saya tidak mengatakan bahwa kesalahan yang sama dilaporkan di sini tetapi dengan cara ini Anda juga bisa mendapatkan kesalahan ini dan memperbaikinya. Itulah yang ingin saya katakan di sini.
sumber
Kesalahan yang sama mungkin muncul bahkan dengan pengaturan variabel lingkungan yang benar, jika Anda menyalin
bin
direktori HANYA ke direktori instalasi. Itu membuatwhich
pekerjaannya lancar, dan para pemula terjebak.sumber
Saya mengalami masalah ini ketika saya menggunakan Maven 3.5.4 pada OpenJDK 11 di Ubuntu. OpenJDK 11 di Ubuntu sebenarnya masih JDK10:
$ ls -al /etc/alternatives/java lrwxrwxrwx 1 root root 43 Aug 24 04:54 /etc/alternatives/java -> /usr/lib/jvm/java-11-openjdk-amd64/bin/java $ java --version openjdk 10.0.2 2018-07-17 OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.3) OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.3, mixed mode)
Saya menginstal OpenJDK dari Oracle ke /opt/jdk-11.0.1 dan menjalankan Maven seperti ini:
JAVA_HOME=/opt/jdk-11.0.1 mvn
Sekarang bekerja seperti pesona.
sumber
Saya punya masalah dengan plugin yang pasti itu sendiri. Kembali ke versi 2.6 berhasil untuk saya. Versi 2.18 / 20 / 22.1 memberi saya kesalahan. Sekarang saya mencoba versi 3.0.0-M1 dari plugin yang pasti dan berhasil.
Jadi ada sesuatu yang salah pasti plgin antara versi 2.6 dan 3.0.0. Saya berasumsi ada sesuatu yang di-hardcode sebagai default yang seharusnya tidak.
sumber
Bagi saya, lucu kedengarannya, itu membantu memulai ulang
eclipse
...sumber
Ini berhasil untuk saya:
Hasil CMD:
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T20: 41: 47 + 02: 00) Maven beranda: C: \ apache-maven-3.6.0 \ bin ..
sumber
Saya juga menghadapi Kesalahan berikut di sistem saya (Mac)
Kesalahan: Tidak dapat menemukan atau memuat kelas utama org.codehaus.plexus.classworlds.launcher.Launcher
Setelah melakukan beberapa penjelajahan acak, saya menemukan tautan " http://maven.apache.org/install.html " yang mengatakan "JAVA_HOME" harus disetel ke "/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/ Isi / Beranda / jre ".
Ketika saya mengubah "JAVA_HOME" seperti yang disebutkan di atas dalam ".bash_profile", perintah "mvn" mulai bekerja tetapi perintah "javac -version" berhenti bekerja.
Ketika saya mengetik perintah "javac -version", saya mendapatkan error berikut
Tidak dapat menemukan file yang dapat dieksekusi di "/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre/bin/javac" (-1)
Karenanya saya mengembalikan "JAVA_HOME" saya ke "/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home" di ".bash_profile" dan menambahkan baris berikut di bagian atas dalam skrip "mvn"
ekspor JAVA_HOME = / Library / Java / JavaVirtualMachines / jdk1.8.0_45.jdk / Contents / Home / jre
Sekarang kedua perintah "mvn" dan "javac" bekerja dengan baik, tetapi setelah mengamati skrip mvn dengan cermat, saya tidak dapat membuat perbedaan antara perintah berikut
/ Library / Java / JavaVirtualMachines / jdk1.8.0_45.jdk / Contents / Home / bin / java -classpath /Users/venkatarajeevmandava/Documents/Maven/apache-maven-3.6.1/boot/plexus-classworlds-2.6.0. jar -Dclassworlds.conf = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / bin / m2.conf -Dmaven.home = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 - Dlibrary.jansi.path = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / lib / jansi-native -Dmaven.multiModuleProjectDirectory = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / bin org.codehaus.plexus.classworlds.launcher.Launcher
/ Library / Java / JavaVirtualMachines / jdk1.8.0_45.jdk / Contents / Home / jre / bin / java -classpath /Users/venkatarajeevmandava/Documents/Maven/apache-maven-3.6.1/boot/plexus-classworlds-2.6. 0.jar -Dclassworlds.conf = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / bin / m2.conf -Dmaven.home = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6. 1 -Dlibrary.jansi.path = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / lib / jansi-native -Dmaven.multiModuleProjectDirectory = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6. 1 / bin org.codehaus.plexus.classworlds.launcher.Launcher
Di atas perintah pertama menyebabkan kesalahan berikut
Kesalahan: Tidak dapat menemukan atau memuat kelas utama org.codehaus.plexus.classworlds.launcher.Launcher
sedangkan perintah kedua berfungsi dengan baik. Harap Perhatikan bahwa kedua jalur di atas memiliki perintah "java" sedangkan yang satu dari "jre" yang lainnya dari "jdk"
Variabel global lainnya adalah sebagai berikut di ".bash_profile"
ekspor M2_HOME = / Pengguna / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1
ekspor PATH = $ PATH: $ M2_HOME / bin
sumber
Ini adalah masalah umum saat menyiapkan Maven. Yang perlu Anda lakukan adalah di bawah ini: -
M2_HOME & M2: - perlu dideklarasikan sebagai variabel Sistem dan bukan sebagai Variabel PENGGUNA / ADMIN.
Jalur: - Ini bisa berupa Variabel Sistem ATAU variabel PENGGUNA / ADMIN [PATH]. Variabel Sistem lebih disukai.
Setelah Anda melakukan setting 3 variabel ini dengan hati-hati, Anda dapat memverifikasi instalasi Maven seperti di bawah ini.
Pada CMD Prompt: -
C: \ Documents and Settings \ ADMIN> mvn --version
Keluaran: -
Apache Maven 2.0.11 (r909250; 2010-02-12 11: 25: 50 + 0530) Versi Java: 1.6.0_22 Java home: C: \ Program Files \ Java \ jdk1.6.0_22 \ jre Lokal default: en_US, platform encoding: Cp1252 Nama OS: "windows xp" versi: "5.1" arch: "x86" Keluarga: "windows"
Terima kasih.
sumber
Di samping jawaban yang mungkin berguna, tapi mungkin terlalu simptomatis, berikut adalah salah satu yang mencoba membantu menemukan penyebab masalahnya.
Maven adalah alat java baris perintah. Artinya, ini bukan biner mandiri, ini adalah kumpulan java
.jar
, diartikan oleh jvm (java.exe
di windows,java
di linux).The
mvn
perintah, adalah naskah. Di windows, ini adalah skrip yang disebutmvn.cmd
dan di linux, ini adalah skrip shell. Jadi, jika Anda menulis:,mvn install
apa yang akan terjadi:/bin/sh
ataucmd.exe
) dipanggil untuk skrip pemohon yang sebenarnyaMasalahnya adalah dengan (2). Untungnya, skrip ini sederhana, sangat sederhana. Bagi seorang programmer java, seharusnya tidak menjadi masalah besar untuk men-debug skrip sekitar 20 baris, meskipun itu adalah bahasa yang sedikit asing.
Di linux, Anda dapat men-debug shellscripts yang memberikan
-x
flag ke penafsir shell Anda (yang kemungkinan besarbash
). Di windows, Anda harus menemukan cara lain untuk men-debugcmd.exe
skrip. Jadi, alih-alihmvn install
, berikan perintahbash -x mvn install
.Hasilnya seperti:
+ '[' -z '' ']' + '[' -f /etc/mavenrc ']' + '[' -f /home/picsa/.mavenrc ']' + cygwin=true + darwin=false
... tidak banyak hal ...
+ MAVEN_PROJECTBASEDIR='C:\peter\bin' + export MAVEN_PROJECTBASEDIR + MAVEN_CMD_LINE_ARGS=' ' + export MAVEN_CMD_LINE_ARGS + exec '/cygdrive/c/Program Files/Java/jdk1.8.0_66/bin/java' -classpath 'C:\peter/boot/plexus-classworlds-*.jar' '-Dclassworlds.conf=C:\peter/bin/m2.conf' '-Dmaven.home=C:\peter' '-Dmaven.multiModuleProjectDirectory=C:\peter\bin' org.codehaus.plexus.classworlds.launcher.Launcher Fehler: Hauptklasse org.codehaus.plexus.classworlds.launcher.Launcher konnte nicht gefunden oder geladen werden
Pada akhirnya, Anda dapat dengan mudah menguji, variabel lingkungan mana yang rusak, dan Anda dapat dengan mudah memperbaiki skrip Anda (atau menyetelnya sesuai kebutuhan).
sumber