Ik zat nu al een uur met dit simpele probleem. Maven werkte vorige week prima, ik weet niet wat er mis is gegaan, ik krijg deze foutmelding. Ik heb alle manieren geprobeerd om fouten op te sporen en alle oplossingen die te vinden zijn in StackOverflow en vele andere plaatsen. Ik heb zelfs geprobeerd het M2_HOME-pad te vervangen door M3_HOME en MAVEN_HOME. Niets werkte. Ik gebruik OS X. Hieronder staat de uitvoer van enkele maven-commando’s. Ik geef graag meer informatie
$ mvn
Error: Could not find or load main class org.codehaus.plexus.classworlds.launcher.Launcher
$ which mvn
/Library/Maven-3.3.3/bin/mvn
$ echo $M2_HOME
/Library/Maven-3.3.3
$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home
$ which java
/usr/bin/java
$ /Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/bin/java -version
java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)
$ echo $PATH
/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Tomcat/bin:/Library/Maven-3.3.3/bin
$ java -version
java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)
$ ls -lR /Library/Maven-3.3.3
total 56
-rw-r--r--@ 1 USERNAME wheel 19091 Apr 22 04:58 LICENSE
-rw-r--r--@ 1 USERNAME wheel 182 Apr 22 04:58 NOTICE
-rw-r--r--@ 1 USERNAME wheel 2541 Apr 22 04:55 README.txt
drwxr-xr-x@ 8 USERNAME wheel 272 Oct 14 12:24 bin
drwxr-xr-x@ 3 USERNAME wheel 102 Oct 14 12:24 boot
drwxr-xr-x@ 5 USERNAME wheel 170 Apr 22 04:55 conf
drwxr-xr-x@ 75 USERNAME wheel 2550 Oct 14 12:24 lib
/Library/Maven-3.3.3/bin:
total 64
-rw-r--r--@ 1 USERNAME wheel 230 Apr 22 04:58 m2.conf
-rwxr-xr-x@ 1 USERNAME wheel 7075 Apr 22 04:58 mvn
-rw-r--r--@ 1 USERNAME wheel 6007 Apr 22 04:58 mvn.cmd
-rwxr-xr-x@ 1 USERNAME wheel 1796 Apr 22 04:58 mvnDebug
-rw-r--r--@ 1 USERNAME wheel 1513 Apr 22 04:58 mvnDebug.cmd
-rwxr-xr-x@ 1 USERNAME wheel 1843 Apr 22 04:58 mvnyjp
/Library/Maven-3.3.3/boot:
total 104
-rw-r--r--@ 1 USERNAME wheel 52684 Aug 29 2014 plexus-classworlds-2.5.2.jar
/Library/Maven-3.3.3/conf:
total 32
drwxr-xr-x@ 3 USERNAME wheel 102 Apr 22 04:55 logging
-rw-r--r--@ 1 USERNAME wheel 10216 Apr 22 04:55 settings.xml
-rw-r--r--@ 1 USERNAME wheel 3649 Apr 22 04:55 toolchains.xml
/Library/Maven-3.3.3/conf/logging:
total 8
-rw-r--r--@ 1 USERNAME wheel 1126 Apr 22 04:55 simplelogger.properties
/Library/Maven-3.3.3/lib:
total 18656
-rw-r--r--@ 1 USERNAME wheel 136324 Jan 29 2015 aether-api-1.0.2.v20150114.jar
-rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-api.license
-rw-r--r--@ 1 USERNAME wheel 36745 Jan 29 2015 aether-connector-basic-1.0.2.v20150114.jar
-rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-connector-basic.license
-rw-r--r--@ 1 USERNAME wheel 172998 Jan 29 2015 aether-impl-1.0.2.v20150114.jar
-rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-impl.license
-rw-r--r--@ 1 USERNAME wheel 30705 Jan 29 2015 aether-spi-1.0.2.v20150114.jar
-rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-spi.license
-rw-r--r--@ 1 USERNAME wheel 25355 Jan 29 2015 aether-transport-wagon-1.0.2.v20150114.jar
-rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-transport-wagon.license
-rw-r--r--@ 1 USERNAME wheel 146876 Jan 29 2015 aether-util-1.0.2.v20150114.jar
-rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-util.license
-rw-r--r--@ 1 USERNAME wheel 4467 May 7 2013 aopalliance-1.0.jar
-rw-r--r--@ 1 USERNAME wheel 44908 May 7 2013 cdi-api-1.0.jar
-rw-r--r--@ 1 USERNAME wheel 21837 Apr 22 04:58 cdi-api.license
-rw-r--r--@ 1 USERNAME wheel 41123 May 7 2013 commons-cli-1.2.jar
-rw-r--r--@ 1 USERNAME wheel 173587 May 7 2013 commons-io-2.2.jar
-rw-r--r--@ 1 USERNAME wheel 284220 May 7 2013 commons-lang-2.6.jar
drwxr-xr-x@ 3 USERNAME wheel 102 Apr 22 04:55 ext
-rw-r--r--@ 1 USERNAME wheel 2256213 Nov 1 2014 guava-18.0.jar
-rw-r--r--@ 1 USERNAME wheel 2497 May 7 2013 javax.inject-1.jar
-rw-r--r--@ 1 USERNAME wheel 293671 Jul 24 2013 jsoup-1.7.2.jar
-rw-r--r--@ 1 USERNAME wheel 3449 Apr 22 04:58 jsoup.license
-rw-r--r--@ 1 USERNAME wheel 5848 May 7 2013 jsr250-api-1.0.jar
-rw-r--r--@ 1 USERNAME wheel 18116 Apr 22 04:58 jsr250-api.license
-rw-r--r--@ 1 USERNAME wheel 66349 Apr 22 04:57 maven-aether-provider-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-aether-provider.license
-rw-r--r--@ 1 USERNAME wheel 55090 Apr 22 04:56 maven-artifact-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-artifact.license
-rw-r--r--@ 1 USERNAME wheel 14964 Apr 22 04:56 maven-builder-support-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-builder-support.license
-rw-r--r--@ 1 USERNAME wheel 286726 Apr 22 04:58 maven-compat-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-compat.license
-rw-r--r--@ 1 USERNAME wheel 631881 Apr 22 04:57 maven-core-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-core.license
-rw-r--r--@ 1 USERNAME wheel 86051 Apr 22 04:58 maven-embedder-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-embedder.license
-rw-r--r--@ 1 USERNAME wheel 160817 Apr 22 04:56 maven-model-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 176410 Apr 22 04:56 maven-model-builder-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-model-builder.license
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-model.license
-rw-r--r--@ 1 USERNAME wheel 46099 Apr 22 04:56 maven-plugin-api-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-plugin-api.license
-rw-r--r--@ 1 USERNAME wheel 25957 Apr 22 04:57 maven-repository-metadata-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-repository-metadata.license
-rw-r--r--@ 1 USERNAME wheel 43032 Apr 22 04:57 maven-settings-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 43154 Apr 22 04:57 maven-settings-builder-3.3.3.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-settings-builder.license
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-settings.license
-rw-r--r--@ 1 USERNAME wheel 375267 Feb 20 2015 org.eclipse.sisu.inject-0.3.0.jar
-rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 org.eclipse.sisu.inject.license
-rw-r--r--@ 1 USERNAME wheel 205404 Feb 20 2015 org.eclipse.sisu.plexus-0.3.0.jar
-rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 org.eclipse.sisu.plexus.license
-rw-r--r--@ 1 USERNAME wheel 13350 May 7 2013 plexus-cipher-1.7.jar
-rw-r--r--@ 1 USERNAME wheel 21837 Apr 22 04:58 plexus-cipher.license
-rw-r--r--@ 1 USERNAME wheel 4211 May 7 2013 plexus-component-annotations-1.5.5.jar
-rw-r--r--@ 1 USERNAME wheel 62458 Oct 29 2014 plexus-interpolation-1.21.jar
-rw-r--r--@ 1 USERNAME wheel 28555 May 7 2013 plexus-sec-dispatcher-1.3.jar
-rw-r--r--@ 1 USERNAME wheel 21837 Apr 22 04:58 plexus-sec-dispatcher.license
-rw-r--r--@ 1 USERNAME wheel 243128 Oct 29 2014 plexus-utils-3.0.20.jar
-rw-r--r--@ 1 USERNAME wheel 399672 Feb 20 2015 sisu-guice-3.2.5-no_aop.jar
-rw-r--r--@ 1 USERNAME wheel 26084 Jul 24 2013 slf4j-api-1.7.5.jar
-rw-r--r--@ 1 USERNAME wheel 14853 Apr 22 04:58 slf4j-api.license
-rw-r--r--@ 1 USERNAME wheel 10680 Aug 17 2013 slf4j-simple-1.7.5.jar
-rw-r--r--@ 1 USERNAME wheel 14853 Apr 22 04:58 slf4j-simple.license
-rw-r--r--@ 1 USERNAME wheel 11432 Apr 21 06:27 wagon-file-2.9.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 wagon-file.license
-rw-r--r--@ 1 USERNAME wheel 2259073 Apr 21 06:32 wagon-http-2.9-shaded.jar
-rw-r--r--@ 1 USERNAME wheel 11787 Apr 21 06:27 wagon-http-shared-2.9.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 wagon-http-shared.license
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 wagon-http.license
-rw-r--r--@ 1 USERNAME wheel 53543 Apr 21 06:27 wagon-provider-api-2.9.jar
-rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 wagon-provider-api.license
/Library/Maven-3.3.3/lib/ext:
total 8
-rw-r--r--@ 1 USERNAME wheel 152 Apr 22 04:55 README.txt
Antwoord 1, autoriteit 100%
Verwijder M2_HOME als omgevingsvariabele, deze is al ingesteld door
het mvn-script. Het enige wat u hoeft te doen is: toevoegen
apache-maven-3.x.x/bin naar je pad, stel JAVA_HOME in als omgeving
variabel. U hoeft dus geen %JAVA_HOME%/bin aan uw pad toe te voegenProbeer eerst mvn -v vanuit de map /Library/Maven-3.3.3/bin/ uit te voeren naar
bevestig dat de installatie correct is. Probeer mvn uit te voeren met xtrace info
(tldp.org/LDP/Bash-Beginners-Guide/html/sect_02_03.html) en verifieer
de door Maven opgebouwde commandoregel. Ik neem aan dat je een onverwachte krijgt
classpath-argumentwaarde.
Antwoord 2, autoriteit 21%
Als je absoluut nieuwe mensen wilt leren, zorg er dan voor dat je de “Binaire archieven” van de Maven-site downloadt, en niet de “Bronarchieven”.
Antwoord 3, autoriteit 12%
Voor wat het waard is, ik had dezelfde fout: het Could not find or load main class org.codehaus...
niet vinden of laden, maar zonder enige andere info (u zult veel mensen vinden met deze foutmelding – maar meestal vergezeld van extra info, zoals mislukte klassenlading).
Het bleek dat ik een beschadigde installatie had, misschien dat sommige bestanden stilletjes niet konden worden uitgepakt of zoiets. Een rm -rf
van de maven-map en opnieuw downloaden en uitpakken loste het op.
Antwoord 4, autoriteit 9%
BEWERK: Let op: dit is voor Mac-gebruikers
M2_HOME
moet worden verwijderd uit het PATH
. Uw PATH
kan standaard worden opgehaald uit een van de volgende bestanden (voor mij stond het in ~/.profile
).
/etc/bashrc
/etc/profile
~/.bashrc
~/.bash_profile
~/.profile
~/.MacOSX/environment.plist
Het kan er ongeveer zo uitzien:
export M2_HOME=/Applications/apache-maven-3.2.3
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
Verwijder de variabelen M2_HOME
en eventuele afhankelijkheden (in het voorbeeld gebruikt de variabele M2
M2_HOME
, dus verwijder die en de regel waarna $M2
wordt gebruikt) waar het ook verschijnt.
[bron]
Om meer informatie te geven over hoe dit bestand wordt gebruikt, kunt u elke locatie die u in het pad wilt opnemen blijven toevoegen.
Als u bijvoorbeeld /User/batman/google-sdk
in het pad wilt opnemen, voegt u de onderstaande regel toe aan het einde van het bestand /Users/batman/google-sdk
(in uw geval ongeacht de locatie van de map), naar het PATH.
export PATH=$PATH:/Users/batman/google-sdk
.
Maar zorg ervoor dat het PATH
al wat informatie bevat voor de bovenstaande regel.
Antwoord 5, autoriteit 3%
Verwijderen en opnieuw installeren werkte voor mij.
Bijzonderheden:
- Het was ongeveer een jaar geleden dat ik maven op deze Linux-machine had gedraaid.
- Java is geüpgraded van 7 naar 8 (maar er zijn ook andere wijzigingen opgetreden).
- Mijn M2_HOME/M3_HOME was niet gedefinieerd (dus wissen was geen oplossing).
- Het uitvoeren van het
mvn
-script in debug (bash -x mvn
) toonde aan dat het ontbrekende jar-bestand expliciet was aangevraagd. - Ik kon alleen een oudere versie van het
org.codehaus.plexus.classworlds
pakket/module vinden.
Omdat het niet duidelijk was hoe ik de jars van org.codehaus
onafhankelijk moest bijwerken, liet ik apt-get
binnenhalen wat nodig was. Probleem opgelost.
Antwoord 6
Ik heb het probleem opgelost, het werkte voor mij:
verwijder het maven unzip-bestand.
en neem dan de nieuwere.
configureer vervolgens het pad opnieuw.
omdat het originele bestand beschadigd was.
gebruik mvn -v
Antwoord 7
In mijn geval verwees M2_HOME
naar /usr/share/maven3
; maar het had moeten zijn:
M2_HOME=/usr/share/maven
in .bashrc
Antwoord 8
In mijn ervaring, controleer je /bin/mvn, wat een POSIX-shellscript is. In het script vindt het eerst maven-gerelateerde env van voor b.v. /etc/mavenrc of $HOME/.mavenrc. In mijn geval, in /etc/mavenrc, was de M2_HOME env-variabele ingesteld op degene die ik had verwijderd, en nadat ik M2_HOME had ingesteld op de nieuwe maven-installatie, werkte “mvn -v”.
Antwoord 9
Het verwijderen van de oude Maven-versie en het herstellen van de nieuwere heeft mijn probleem opgelost.
Ik gebruikte Maven 3.2.3 eerder met Java 1.8.0_65.
Ik heb zojuist geprobeerd de eerdere maven-versie te vervangen door 3.3.9 , wijzigingen aangebracht in de omgevingsvariabelen en het werkte.
Antwoord 10
Wat ik deed, was dat ik (in mijn .bash_profile) de
. hernoemde
export M2_HOME=/usr/local/bin/mvn
export M2=$M2_HOME/bin
naar
export M3_HOME=/usr/local/bin/mvn
export M2=$M3_HOME/bin
en gebruikte toen het commando (bedankt TS!)
$ which mvn
en
$ echo $M2_HOME
En ik zag dat er in beide een ander pad is, dus ik heb het pad $M2_HOME
gewijzigd in hetzelfde pad als het me liet zien in het “Welke mvn”-commando. Om dit pad te wijzigen, heb ik zojuist het .bash_profile-bestand bewerkt waar ik de variabele had.
Antwoord 11
Download het apache maven binaire pakket niet het bronpakket, op deze manier kan het het probleem oplossen van:
Fout: kan hoofdklasse niet vinden of laden
org.codehaus.plexus.classworlds.launcher.Launcher
Antwoord 12
Het herstarten van de eclips loste het probleem voor mij op.
Antwoord 13
Het lijkt erop dat dit probleem zich nu voordoet in de openjdk-docker (ik gebruik circleci/openjdk:8-jdk).
Zie bugrapport