我最近將Ubuntu從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
。我的環境變量的聲明如下: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變量在不同的線程,導致得到一個不同的錯誤的建議:Error: Could not find or load main class org.codehaus.plexus.classworlds.launcher.Launcher
。我也試過運行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
刪除的舊配置文件?
編輯:當我作爲root執行mvn時,我得到Launcher錯誤而不是plexus-classworlds-2.x。此外,我已經完全刪除並重新安裝了所有叢庫,但沒有任何更改。
我假設你正在使用M2_HOME等,並安裝了較舊的Maven版本(3.2.X +)。最重要的是刪除所有的東西,如M2_HOME,M2等,只添加maven發行版的bin文件夾到你的路徑(就是JAVA_HOME除外)。 – khmarbaise
不幸的是,這仍然會導致缺少.usr.share.maven.boot。 plexus-classworlds-2.x.jar錯誤。即使我手動執行/ usr/share/maven/bin/mvn -v,我也會得到相同的結果。 –
你在你的環境中有這樣的地方。您是否刪除了M2_HOME和M2等,只保留路徑中的/ usr/shared/maven/bin ... – khmarbaise