摘自個(gè)人印象筆記2021-05-07:https://app.yinxiang.com/fx/55e1d5f4-aeea-446a-a768-0f1a48195f5b(圖顯示不完整可查看原筆記內(nèi)容)
1:確保IDE中的編譯版本正確
在idea中,主要看項(xiàng)目屬性中和setting的java compiler中對(duì)應(yīng)的jdk版本是否正確,如下:
項(xiàng)目屬性中查看:
setting中查看:
2:確保pom文件中的maven-compiler-plugin插件配置正確
org.apache.maven.plugins maven-compiler-plugin 3.1 1.9 1.93:如果mvn compile編譯提示如下異常信息:
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
可使用以下命令顯示mvn編譯詳細(xì)信息:
mvn -X -U clean compile
4:如果以上1、2項(xiàng)都正確,但仍然提示“無(wú)效的目標(biāo)發(fā)行版”,則需要重點(diǎn)注意:
用以下命令查看mvn所使用的jdk是哪個(gè)版本:
mvn -version
輸出如下字樣:
注意,其中的Java version代表著maven使用的jdk版本,此版本要和maven-compiler-plugin插件中配置的source和target的版本相對(duì)應(yīng)!
比如以上圖中配置的編譯版本是1.9,但是maven實(shí)際使用的是1.8的jdk,則會(huì)提示“無(wú)效的目標(biāo)發(fā)現(xiàn)版本:1.9”?。?!文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-649105.html
原理:
Maven是從JAVA_HOME變量中而不是從PATH環(huán)境變量中獲取的Java版本,所以本機(jī)即使配置的1.9的默認(rèn)jdk,但是由于JAVA_HOME指向的是另外一個(gè)jdk,就會(huì)出現(xiàn)編譯版本的問(wèn)題!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-649105.html
到了這里,關(guān)于maven編譯始終提示無(wú)效的目標(biāo)發(fā)行版的解決方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!