2016-09-22 2 views
1

최근 내 우분투를 14.04에서 16.04로 업그레이드했으며, 다음과 같은 오류가 발생했습니다. mvn 명령 (버전 3.3.9) : Error: Could not find or load main class .usr.share.maven.boot.plexus-classworlds-2.x.jar. 다음과 같이 내 환경 변수가 선언됩니다 Error: Could not find or load main class org.codehaus.plexus.classworlds.launcher.Launcher :Maven 오류 : 메인 클래스를 찾지 못하거나로드하지 못했습니다 .usr.share.maven.boot.plexus-classworlds-2.x.jar

$JAVA_HOME: /usr/lib/jvm/java-8-oracle $PATH: /usr/local/texlive/2015/bin/x86_64-linux:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin $M2_HOME: /usr/share/maven $M2: /usr/share/maven/bin

해결책을 찾기 위해 노력하고, 나는 다른 오류가 초래 다양한 스레드에 제안으로 M2 및 M2_HOME 변수를 제거하려고했습니다. 또한 apt-get remove --purge maven을 실행하고 .tar.gz 아카이브를 다운로드하고 다시 설치하려고했지만 두 경우 모두 변경된 사항이 없습니다.

/usr/share/maven/boot 폴더를 살펴볼 때 plexus-classworlds-2.x.jar -> /usr/share/java/plexus-classworlds2-2.5.2.jar을 가리키는 일련의 심볼릭 링크가 있습니다. 일부 종속성이 누락 되었습니까? 또는 --purge에 의해 제거되지 않은 이전 구성 파일이 있습니까?

EDIT : root로 mvn을 실행하면 plexus-classworlds-2.x 대신 Launcher 오류가 발생합니다. 또한 필자는 모든 신경총 라이브러리를 완전히 제거하고 다시 설치했지만 변경하지 않았습니다.

+0

M2_HOME 등을 사용 중이며 이전 Maven 버전 (3.2.X 이상)을 설치했다고 가정합니다. 가장 중요한 것은 M2_HOME, M2 등의 모든 것을 제거하고 경로에 maven 배포본의 bin 폴더를 추가하는 것입니다 (JAVA_HOME 제외). – khmarbaise

+0

불행하게도 .usr.share.maven.boot가 누락됩니다. plexus-classworlds-2.x.jar 오류. 비록 내가/usr/share/maven/bin/mvn -v를 실행할 수 있다고하더라도, 나는 같은 결과를 얻는다. –

+0

당신은 당신의 환경에 그런 것들을 가지고 있습니다. M2_HOME 및 M2 등을 제거 했습니까? 경로에서/usr/shared/maven/bin 만 유지하면됩니다 ... – khmarbaise

답변

3

/usr/share/maven/boot/usr/share/maven/boot/plexus-classworlds-*.jar 패턴의 여러 항아리가 있는지 확인하십시오.

drwxr-xr-x 2 root root 4096 Dec 23 14:21 ./ 
drwxr-xr-x 6 root root 4096 Nov 14 2015 ../ 
-rw-r--r-- 1 root root 52684 Dec 12 2015 plexus-classworlds-2.5.2.jar 
lrwxrwxrwx 1 root root 34 Dec 10 2015 plexus-classworlds-2.x.jar -> ../../java/plexus-classworlds2.jar 

/usr/share/maven/bin/mvn bash는 스크립트를 망쳐 놨하고 잘못된 자바 명령을 실행 :

은 광산 같은 것이 있었다.

나는 항아리를 제거하고 기호 링크 만 남겨 두어야했다.

관련 문제