聊聊maven與jdk版本對應關系
maven與jdk版本對應關系
很多搬磚的小夥伴在使用maven項目打包的時候,都會遇到下面的編譯問題:
Caused by: java.lang.UnsupportedClassVersionError: org/apache/maven/plugin/compiler/CompilerMojo : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
在網上查資料發現是maven版本與jdk版本不一致導致的。
解決方式(windows)
1.mvn -version 查看本地的maven版本
java -version 查看本地的jdk版本
2.點擊 http://maven.apache.org/docs/history.html
查看maven與jdk版本對應關系
3.現在一目瞭然,保證本地的maven與jdk一致問題就沒瞭,重新構建打包ok。
maven和java的jdk版本不同
添加瞭JDK14,環境變量配置如下(之前的8也留著,以備切換使用)
然後,查詢瞭jdk的版本,因為要使用maven,順便也查詢瞭下maven的版本。看看,看看,兩個JAVA版本不同唉
怎麼改成一樣的呢?
1. JDK就是當前要設置的14,沒毛病。
2. 檢查下maven的配置吧,maven/config/setting.xml
搜索JDK就這些,而且還被註釋掉瞭。算瞭,當他不存在吧。
3. 查看下maven的運行腳本(mvn.cmd)
搜索JAVA,呵呵,JAVA_HOME,我的java_home是啥呢?再看看我的環境變量(圖1),java_home就是1.8啊。
來來來,換個名字,有圖有真相【記得改PATH環境變量引用,記得改PATH環境變量引用,記得改PATH環境變量引用(JAVA14_HOME改成JAVA_HOME)】
保存後,再打開個cmd窗口,結果來啦
啦啦啦啦~~~~~
就是我要得結果啦,美~~~~~
備註: Java的環境變量名稱最好設置為JAVA_HOME,若有多個jdk版本,隻設置自己想用的那個版本,不用都設置在環境變量中。想換版本時,直接修改java_home對應的目錄即可。
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- 使用jenkins配置maven和JDK
- Spring Boot四大神器之CLI的具體使用
- 帶你走進Maven的大門-最全Maven配置及集成idea工具總結
- Java Tomcat 啟動閃退問題解決集
- 從零開始讓你的Spring Boot項目跑在Linux服務器