programing

Maven 오류: 메인 클래스 org.codehouse.plexus.classworlds.launcher를 찾거나 로드할 수 없습니다.런처

minecode 2023. 1. 4. 20:30
반응형

Maven 오류: 메인 클래스 org.codehouse.plexus.classworlds.launcher를 찾거나 로드할 수 없습니다.런처

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★를 설치했습니다.maven-3.0.4Windows 7의 경우:
인스톨의 상세한 것에 대하여는, 다음과 같습니다.
경로 : 치치로 :

C:\apache-maven-3.0.4  

환경변수는 다음과 같습니다.

M2_HOME C:\apache-maven-3.0.4\apache-maven\src  
JAVA_HOME C:\Program Files\Java\jdk-1.7.0_04  

추가된 경로 변수는 다음과 같습니다.

%M2_HOME%\bin;%JAVA_HOME%\bin;

명령어 창에는 다음과 같이 표시됩니다.

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  

은 PC에 되어 있는 이며, 의 maven 입니다.M2_HOME이치노

다음과 같은 블로그에서 제공되는 모든 솔루션을 읽고 사용해 보았습니다.

아직 못찾았어요.이 모든 일에서 내가 놓칠 수 있는 게 뭘까?잘 부탁드립니다.

저도 이 문제를 짚어봤더니 이 기사가 나왔어요.Maven3의 경우 환경변수명을 M2_HOME에서 M3_HOME으로 변경하면 효과가 있었습니다.OSX 10.9와 JDK 1.7을 실행하고 있는 Mac을 사용하고 있습니다.이게 도움이 됐으면 좋겠다.

M2_HOME: M2_HOME. ::unset M2_HOME

질문에 답변이 되었더라도 위의 오류가 발생할 경우 바이너리 파일을 다운로드했는지 확인하십시오.

소스 파일은 사용자가 고급 사용자이고 처리 방법을 알고 있는 경우에만 다운로드해야 합니다.

파일을 잘못 다운로드하는 경우가 꽤 많았습니다.선후배입니다.

같은 문제가 발생했기 때문에 환경변수를 신중하게 다시 실행함으로써 해결할 수 있었습니다.

  • M2_HOME
  • M2
  • JAVA_HOME

또한 Maven 설명서에 나와 있는 사용자 변수가 아니라 모두 시스템 변수입니다.언제

echo %Path%

%M2% 및 %J이(가) 보이는지 확인합니다.AVA_HOME% 변수가 완전히 확장되었습니다.즉, 다음과 같습니다.

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]

apt-get에 의해 설치되었지만 두 개의 다른 Ubuntu 12.04 설치에서 이 문제가 발생하였습니다.문제는 M2_HOME.

고정 대상:

export M2_HOME=/usr/share/maven

이 에러는 Maven 사이트에서 BINARY가 아닌 SRC를 다운로드한 것이 원인이라고 생각합니다.반드시 바이너리 zip을 다운로드해 주세요.

다음 경로는 SRC를 다운로드했을 때만 표시됩니다.

M2_HOME C:\apache-maven-3.0.4\apache-maven\src

여기에 이미지 설명 입력

패스 정보에 근거해 바이너리가 아니고, 소스 파일을 인스톨(해동) 한 것 같습니다.대신 바이너리를 설치하고 다른 포스터의 답변을 따르십시오.

저는 이 ,, 는 mar mar mar mar mar khmarbaise well 의 that that that that that that that that that that that that that that that that that that that that that that that that that that well well well well well well well well well well well well well well well well well well wellM2_HOME

D:\workspace\apache-maven-3.1.0-bin\apache-maven-3.1.0\bin

그리고 나서 나는 그것을 추적했다.

D:\workspace\apache-maven-3.1.0-bin\apache-maven-3.1.0

Windows 7(x64)을 사용하고 있다는 것을 알려드립니다.

메이븐의 작품OS X ElCap 10.116월 Maven 3.3.9일 것.Could not find ...org.codehaus.plexus...". 이 링크에서는 McKamey의 코멘트로 솔루션을 제공하고 있습니다.M2_HOME을 삭제하기만 하면 됩니다.(unset M2_HOME한번 해보니 모든 게 예상대로 되더라고요.

하실 수 있습니다.Maven install page "된 디렉토리 -- 또는 에 대한 "M2_HOME M3_HOME" "M3_HOME" "M3_HOME" "M3_HOME" "M2_HOME" "M2" "mapache-maven-3.3.9" bin PATH "PATH" "MATH"

대부분의 Maven 셋업 문제에서 "Could not find or load main class...(메인 클래스를 찾을 수 없거나 로드할 수 없습니다)"와 같은 문제가 해결되었는지 확인하기 위해 다음 단계를 시작합니다.

  • 올바른 아카이브(SOURCE 아카이브가 아닌 바이너리 아카이브)를 압축 해제했는지 확인합니다.
  • Maven과 관련된 모든 사용자 및 시스템 변수를 삭제합니다(예:M2_HOME, M2_OPTS 등)
  • JAVA_를 확인합니다.HOME 시스템 변수가 설정됩니다(예: "C:\Program Files\Java\jdk1.8.0_172")
  • Java bin 위치가 "경로" 시스템 변수에 추가되었는지 확인하십시오(예: "%J").AVA_HOME%\bin")
  • maven bin 위치가 "path" 시스템 변수에 추가되었는지 확인합니다(예: "C:\MyInstalls\apache-maven-3.5.4\bin")

그러면...

  • Java가 설정되어 있는지 확인합니다(명령 프롬프트: java - version).
  • maven이 설정되어 있는지 확인합니다(명령 프롬프트: mvn --version).

새 터미널을 열고 다음을 수행합니다.

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

그런 다음 입력합니다.

mvn -version

할 수 ../bash_profile할 수 .

M2_HOME의 위치를 다음과 같이 변경해야 합니다.

set M2_HOME=C:\apache-maven-3.0.4\apache-maven

게다가 JDK 의 인스톨은, JDK 가 아닌 JRE 로 보입니다.Maven의 경우 JRE가 아니라 JDK가 필요합니다.

Mac OSX에서도 비슷한 문제가 발생했습니다.시행착오를 거듭한 끝에 나는 마침내 그것을 해결했다.

★★★~/.bash_profile 생겼다

export M2_HOME=/Users/xyz/maven-3.x/bin
export PATH=$PATH:$M2_HOME

가 하려고 때echo M2_HOME "Maven"과 같은 "Maven"이 표시됩니다.mvn clean ★★★★★★★★★★★★★★★★★」mvn install 항상

메인 클래스 org.codehouse.plexus.classworlds.launcher를 찾거나 로드할 수 없습니다.런처

하려면 , , , , , , , , , , , , , , , , , .M2_HOME 정도까지

export M2_HOME=/Users/xyz/maven-3.x
export PATH=$PATH:$M2_HOME/bin

voila! 했어! voila의 만으로! 작동하기 시작했어! 단지 위치를 움직여서/bin에서 M2_HOME PATH

소스 zip 아카이브 대신 Binary zip 아카이브(apache-maven-3.5.0-bin.zip)를 다운로드했는지 확인하십시오.그런 다음 생성된 디렉토리 apache-maven-3.5.0의 bin 디렉토리를 PATH 환경변수에 추가합니다.

maven의 바이너리 버전을 설치하면 문제가 해결됩니다.

apache-maven-3.6.1-bin.zip

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ xp 를 할 수 mvn -version 메시지가 되었습니다.

"Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/plexus/classworlds/launcher/Launcher"

제가 확인한 바로는M2_HOME되었으며 "Maven" PC는 "Maven"으로 되어 있습니다.echo %path%메이븐이 내 길을 막고 있다는 걸 확인했어

몇 시간 동안 솔루션을 찾고 있다가 우연히 솔루션을 발견하게 되었습니다(이 솔루션이 같은 오류가 발생하는 모든 사용자에게 해결책이 될 수 없다는 것을 알기 때문에 솔루션을 말합니다).

가 맡은 요.M2_HOME 하고 cmd에서 얻은 붙여넣었습니다.M2_HOME at.창에 것을 알 수 있습니다.그 시점에서 경로가 창에 표시되었기 때문에 경로가 올바른지 알 수 있었습니다.이 시점에서 dir 명령어를 입력했는데 놀랍게도 File Not Found(파일을 찾을 수 없습니다)라는 오류가 나타납니다.

탐색기를 통해 해당 경로를 찾아갔더니 파일이 분명히 있었습니다.폴더가 희미하게 되어 있는 것을 알 수 있었습니다만, 그 폴더에 액세스 해, 각 폴더내의 파일을 표시할 수 있었습니다(제 PC에는 관리자 권한이 있습니다).Maven의 부모 폴더 속성을 살펴보니 Hidden 박스가 켜져 있습니다.저는 수표를 삭제하고 신청하여 dir 명령어를 다시 시도했습니다.

에 나는 음음음 the를 먹어 .mvn –version다시 명령을 내렸지만 이번에는 예상한 결과를 얻었습니다.

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"

마침내 저는 jar와 war 파일을 만들었고 제 웹 앱은 제 로컬 Tomcat에서 성공적으로 실행되었습니다.

이게 도움이 됐으면 좋겠네요

@khmarbaise가 지적한 것 외에 JAVA_HOME을 잘못 입력한 것 같습니다.기본 위치에 설치했다면 jdk와 1.7.0_04 사이에는 "-"(하이픈)이 없습니다.그러니까...

JAVA_HOME C:\Program Files\Java\jdk1.7.0_04 

이 문제가 발생할 수 있는 다른 사용자는 ~/.mavenrc에서 M2_HOME 또는 JAVA를 확인하는 것을 잊지 마십시오.홈 설정

바이너리 zip(예: ex)을 다운로드해 보겠습니다.Maven 3.0.5(바이너리 zip)로, 정식 Maven 사이트의 완전한 소스가 아닙니다.또한 명령줄에서 java 및 javac 명령을 인식하는지 확인하십시오.Maven 소스 zip에는 lib 폴더에 라이브러리가 포함되어 있지 않지만 Binary zip에는 plexus-classworlds-2.4.jar가 포함되어 있습니다.아마도 문제는 이 도서관들의 부재였을 것이다.어쨌든 도움이 되어 M2_HOME은 C:\Program Files\Java\apache-maven-3.0.5, PATH는 C:\Program Files\Java\apache-maven-3.0.5\bin입니다.

이 문제는 내 돈에서 찾을 수 있다.OS는 "Oracle Java is replace by gcj"로 인해 발생하며 기본 Java를 "Oracle Java"로 변경하면 문제가 해결됩니다.

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

파일이 되어 것( 「 「 」 「 」 「 」 ( 」 。srcSource Files에만 들어가므로 필요 없습니다.)여기서 바이너리 파일을 인스톨 해 보겠습니다.그런 다음 여기에 설명된 대로 환경 변수를 설정합니다.이건 나한테 효과가 있었어.그리고 당신에게도 효과가 있을 거라고 확신해요.

버전을 잘못 다운로드하신 것 같습니다.지금 이 문제에 부딪혔는데, 찾고 찾아봐도 방법이 없어요.마지막으로 다운로드 받은 maven이 Source zip 아카이브라는 을 알게 되었습니다.Binary zip archive로 변경하면 모든 것이 정상입니다.

나도 비슷한 문제에 직면했다.그러나 제 경우 경로 변수에 apache-maven-3.3-src 폴더를 사용했습니다.나중에 folder apache-maven-3.3-bin의 올바른 경로로 수정했습니다.이것으로 문제가 해결되었다.여기서 보고되는 오류와 동일한 오류라고는 할 수 없지만, 이렇게 하면 이 오류를 발생시켜 수정할 수도 있습니다.그게 내가 여기서 말하려고 하는 것이다.

를 올바르게해도, 「ONLY」를 하면, 에러가 .bin디렉토리를 인스톨 디렉토리로 이동합니다. 하면 된다which일을 잘하면 초보자도 꼼짝 못하게 된다.

도움이 될 수 있지만 지나치게 증상적인 답변 옆에 문제의 원인을 찾는 데 도움이 되는 답변이 있습니다.

메이븐 자바바이너리가 입니다..jars, jvm)으로됩니다.java.exe 「」, 「」,java★★★★★★★★★★★★★★★★★★★★★」

mvn이치노 윈도우, 윈도우라는 입니다.mvn.cmdLinux ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★」이렇게요.mvn install , 「」, 「 」

  1. /bin/sh ★★★★★★★★★★★★★★★★★」cmd.exe는, 실제의 기동 스크립트)에 됩니다.
  2. 이 스크립트는 필요한 환경 변수를 설정합니다.
  3. 마지막으로 maven 기능을 포함하는 필수 클래스 경로를 가진 Java 인터프리터를 호출합니다.

문제는 (2)에 있다.다행히 이 스크립트는 매우 간단합니다.자바 프로그래머에게 있어서 20줄 정도의 스크립트를 디버깅하는 것은 약간의 외래어일지라도 큰 문제가 되지 않을 것이다.

에서는, Linux 에 「shellscript」를 제공하는 셸 를 디버깅 할 수 .-x, 「」라고 하는 경우가 있습니다).bash에서는, 를 하는 가 있습니다.cmd.exe, . mvn installbash -x mvn install.

결과는 다음과 같습니다.

+ '[' -z '' ']'
+ '[' -f /etc/mavenrc ']'
+ '[' -f /home/picsa/.mavenrc ']'
+ cygwin=true
+ darwin=false

...그렇게 많지는 않지만...

+ 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

마지막으로 어떤 환경변수가 고장났는지 쉽게 테스트할 수 있으며 스크립트를 매우 쉽게 수정할 수 있습니다(또는 필요에 따라 설정할 수도 있습니다).

Ubuntu의 OpenJDK 11에서 Maven 3.5.4를 사용했을 때 문제가 있었습니다.Ubuntu의 OpenJDK 11은 실제로는 아직 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)

Oracle의 OpenJDK를 /opt/jdk-11.0.1에 설치하고 Maven을 다음과 같이 실행했습니다.

JAVA_HOME=/opt/jdk-11.0.1 mvn

이제 그것은 마법처럼 작동한다.

surefire 플러그인 자체에 문제가 있었습니다.버전 2.6으로 되돌아가면 효과가 있었습니다.버전 2.18/20/22.1에서 오류가 발생하였습니다.Surefire 플러그인의 버전 3.0.0-M1을 시험해 보니 동작합니다.

따라서 버전 2.6과 3.0.0 사이의 surefire plgin에 문제가 있습니다.디폴트로서 하드 코드 되어 있지 않은 것이 있는 것 같습니다.

시작하는 데 이 되었다.eclipse

이 방법은 효과가 있었습니다.

  1. 환경변수에서 모든 Mavin 참조 제거
  2. mavin에서 바이너리 다운로드
  3. 압축을 풀고 싶은 위치: C:\apache-mapen-3.6.0
  4. 환경변수로 이동하여 시스템 변수 경로 "C:\apache-maven-3.6.0\bin"에 추가합니다.
  5. Administrator로 명령 프롬프트 시작
  6. 버전 확인 대상: mvn - v

CMD 결과:

Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5fb20918da4f719f3, 2018-10-24)T20:41:47+02:00) 메이븐 홈:C:\apache-maven-3.6.0\bin..

또한 시스템에서 다음과 같은 오류가 발생했습니다(Mac).

오류: 메인 클래스 org.codehouse.plexus.classworlds.launcher를 찾거나 로드할 수 없습니다.런처

랜덤 브라우징을 실행한 후 링크 "http://maven.apache.org/install.html"을 발견했습니다.링크 "JAVA_HOME"은 "/Library/Java/Java/JavaVirtual Machines/jdk1.8.0_45.jdk/Contents/Home/jre"로 설정해야 합니다.

위의 ".bash_profile"에서 설명한 바와 같이 "JAVA_HOME"을 변경하면 "mvn" 명령어는 동작하기 시작했지만 "javac - version" 명령어는 동작하지 않았습니다.

"javac - version" 명령어를 입력했을 때 다음 오류가 발생하였습니다.

/Library/Java/JavaVirtual Machines/jdk1.8.0_45.jdk/Contents/Home/jre/bin/javac(-1)에서 실행 파일을 찾을 수 없습니다.

그 때문에, 「.bash_profile」의 「/Library/Java/Java/JavaVirtual Machines/jdk1.8.0_45.jdk/Contents/Home」에 「JAVA_HOME」를 롤백 해, 「mvn」스크립트의 선두에 다음의 행을 추가했습니다.

내보내기 JAVA_HOME=/Library/Java/JavaVirtual Machines/jdk1.8.0_45.jdk/Contents/Home/jre

"mvn" 명령어와 "javac" 명령어는 모두 정상적으로 동작했지만 mvn 스크립트를 주의 깊게 관찰한 결과 다음 명령어를 구분할 수 없었습니다.

/Library/Java/Virtual Machines/jdk1.8.0_45.jdk/Contents/Home/bin/java - classpath/Users/venkatarajeevmandava/Documents/Maven/boot/apache-maven-3.6.1/plex-class-2.jard.jard.jard.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/Maven/plex orghouse-plex orghouse.런처

/Library/Java/JavaVirtual Machines/jdk1.8.0_45.jdk/Contents/Home/jre/bin/java - classpath/Users/venkatarajeevmandava/Documents/Maven/Maven/Bootpace-maven-3.6.1/blex-class-s.world - 0shome=/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/Maven/plex orghouse-plex orghouse.런처

위의 첫 번째 명령으로 인해 다음 오류가 발생했습니다.

오류: 메인 클래스 org.codehouse.plexus.classworlds.launcher를 찾거나 로드할 수 없습니다.런처

두 번째 명령어는 정상적으로 동작했습니다.위의 두 경로 모두 "java" 명령을 사용하는 반면 하나는 "jre"에서 온 경로이고 다른 하나는 "jdk"에서 온 경로입니다.

기타 글로벌 변수는 ".bash_profile"과 같습니다.

M2_HOME=/Users/venkatarajeevmandava/Documents/Maven/apache-maven-3.6.1 내보내기

PATH=$PATH 내보내기:M2_HOME/빈

이 문제를 해결하기 위해 머신에서 다운로드한 maven(/Users/kkohli/Desktop/Personal/Code/Java/apache-maven-3.6.3)을 삭제하고 아파치 사이트에서 바이너리 버전을 다시 다운로드했습니다.다른 bashprofile 파일 등은 수정하지 않았다(M2_HOME, JAVA_).HOME 등이 내 bashprofile 내에 설정되어 있습니다.)

언급URL : https://stackoverflow.com/questions/11118237/maven-error-could-not-find-or-load-main-class-org-codehaus-plexus-classworlds-l

반응형