如何在 Mac OS X 上手動安裝 Maven? 修復 UnsupportedClassVersion 錯誤:org/apache/maven /cli/MavenCli
已發表: 2019-01-06Maven 構建是我們在處理日常代碼庫之後的第一個想法。 我通常一天執行數百次 Maven Build。 您可能已經註意到,在 Crunchify 上,我們幾乎所有的項目都基於 Maven。
Maven 是 Java 開發者社區發生的最好的事情之一。
使用簡單的maven clean install
、 maven clean deploy
和更多命令,您的 word 項目只需構建和部署所有依賴項。 Maven 將所有依賴項下載到 settings.xml 文件中指定的路徑。
您有新的 Macbook Pro 嗎?您的 Mac 是否在最新的 Mac OS X 版本上運行? 如果是,它不會默認安裝 Maven。
看一下這個
1 2 3 4 5 |
bash - 3.2 $ mvn clean install bash : mvn : command not found bash - 3.2 $ mvn eclipse : eclipse bash : mvn : command not found |
如果您有以下任何問題,那麼您來對地方了:
- Maven——安裝 Apache Maven
- 如何在 Mac OSX 上安裝 Maven
- 如何確保maven安裝在mac中
- 如何在沒有 Homebrew 的 Mac OS X 上安裝 Maven?
在本教程中,我們將介紹如何在 Mac OS X 上安裝 Maven。讓我們開始吧:
第1步
從官方網站下載最新的 Maven 版本apache-maven-3.6.0-bin.tar.gz
。
我們正在使用 linux wget command
來下載它。
這是一個鏡像下載位置:http: //mirrors.koehn.com/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.zip
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
bash - 3.2 $ mkdir ~ / crunchify bash - 3.2 $ cd ~ / crunchify / bash - 3.2 $ pwd / Users / ashah / crunchify bash 3.2 $ wget http : //mirrors.koehn.com/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.zip -- 2019 - 01 - 17 21 : 20 : 50 -- http : //mirrors.koehn.com/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.zip Resolving mirrors . koehn . com ( mirrors . koehn . com ) . . . 209.240.109.238 Connecting to mirrors . koehn . com ( mirrors . koehn . com ) | 209.240.109.238 | : 80... connected . HTTP request sent , awaiting response . . . 200 OK Length : 9102386 ( 8.7M ) [ application / zip ] Saving to : ‘ apache - maven - 3.6.0 - bin . zip ’ apache - maven - 3.6.0 - bin . zip 100 % [ ========================================================================== > ] 8.68M 3.25MB / s in 2.7s 2019 - 01 - 17 21 : 20 : 53 ( 3.25 MB / s ) - ‘ apache - maven - 3.6.0 - bin . zip ’ saved [ 9102386 / 9102386 ] |
上面的命令會將 .zip 文件下載到/Users/ashah/crunchify
文件夾。
第2步
轉到~/crunchify/
文件夾或/Users/ashah/crunchify
文件夾。
使用 unzip 命令提取 apache-maven-3.6.0-bin.zip 文件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
bash - 3.2 $ cd ~ / crunchify bash - 3.2 $ unzip apache - maven - 3.6.0 - bin . zip Archive : apache - maven - 3.6.0 - bin . zip creating : apache - maven - 3.6.0 / creating : apache - maven - 3.6.0 / lib / creating : apache - maven - 3.6.0 / lib / jansi - native / creating : apache - maven - 3.6.0 / lib / jansi - native / freebsd32 / creating : apache - maven - 3.6.0 / lib / jansi - native / freebsd64 / creating : apache - maven - 3.6.0 / lib / jansi - native / linux32 / creating : apache - maven - 3.6.0 / lib / jansi - native / linux64 / creating : apache - maven - 3.6.0 / lib / jansi - native / osx / creating : apache - maven - 3.6.0 / lib / jansi - native / windows32 / creating : apache - maven - 3.6.0 / lib / jansi - native / windows64 / creating : apache - maven - 3.6.0 / bin / creating : apache - maven - 3.6.0 / conf / |

第三步
接下來是設置類路徑。
通過更新.bash_profile
文件將 maven 類路徑設置到您的環境變量。
1 |
bash - 3.2 $ sudo vi ~ / . bash_profile |
添加以下兩行並保存文件。
1 2 |
export M2_HOME =/ Users / ashah / crunchify / apache - maven - 3.6.0 export PATH = $ PATH : $ M2_HOME / bin |
第四步
如何從命令行重新加載.bash_profile
?
1 |
bash - 3.2 $ source ~ / . bash_profile |
或執行以下命令。
1 |
bash - 3.2 $ . ~ / . bash_profile |
第 5 步
現在再試一次mvn -version
,一切就緒。
1 2 3 4 5 6 7 8 |
bash - 3.2 $ mvn - version Apache Maven 3.6.0 ( 97c98ec64a1fdfee7767ce5ffb20918da4f719f3 ; 2018 - 10 - 24T13 : 41 : 47 - 05 : 00 ) Maven home : / Users / ashah / crunchify / apache - maven - 3.6.0 Java version : 1.8.0_191 , vendor : Oracle Corporation , runtime : / Library / Java / JavaVirtualMachines / jdk1 . 8.0_191.jdk / Contents / Home / jre Default locale : en_US , platform encoding : UTF - 8 OS name : "mac os x" , version : "10.14.2" , arch : "x86_64" , family : "mac" bash - 3.2 $ |
面對這個錯誤?
運行命令mvn -version
時是否出現以下錯誤?
1 2 3 4 5 6 7 |
bash - 3.2 $ mvn - version Exception in thread "main" java . lang . UnsupportedClassVersionError : org / apache / maven / cli / MavenCli : Unsupported major . minor version 51.0 at java . lang . ClassLoader . defineClass1 ( Native Method ) at java . lang . ClassLoader . defineClassCond ( ClassLoader . java : 637 ) at java . lang . ClassLoader . defineClass ( ClassLoader . java : 621 ) at java . security . SecureClassLoader . defineClass ( SecureClassLoader . java : 141 ) at java . net . URLClassLoader . defineClass ( URLClassLoader . java : 283 ) |
問題是因為您沒有在 Mac 中正確設置JAVA_HOME
。 為了解決這個問題,在export M2_HOME
行之前將下面的行添加到.bash_profile
中。
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
在我的情況下,我的 JDK 安裝是jdk1.8.0_91.jdk
,請確保輸入您的。
帶有 JDK 路徑的 .bash_profile 文件:
1 2 3 |
export JAVA_HOME =/ Library / Java / JavaVirtualMachines / jdk1 . 8.0_191.jdk / Contents / Home export M2_HOME =/ Users / ashah / crunchify / apache - maven - 3.6.0 export PATH = $ PATH : $ M2_HOME / bin |
你都準備好了。
只需嘗試運行 maven,您就不會看到任何問題。 我希望本教程能幫助您快速輕鬆地在 Mac OSX 上設置 Maven 路徑。