2024廣州疫情最新消息泰州百度關(guān)鍵詞優(yōu)化
摘自個人印象筆記2021-05-07:https://app.yinxiang.com/fx/55e1d5f4-aeea-446a-a768-0f1a48195f5b(圖顯示不完整可查看原筆記內(nèi)容)
1:確保IDE中的編譯版本正確
在idea中,主要看項目屬性中和setting的java compiler中對應(yīng)的jdk版本是否正確,如下:
項目屬性中查看:
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編譯詳細信息:
mvn -X -U clean compile
4:如果以上1、2項都正確,但仍然提示“無效的目標發(fā)行版”,則需要重點注意:
用以下命令查看mvn所使用的jdk是哪個版本:
mvn -version
輸出如下字樣:
注意,其中的Java version代表著maven使用的jdk版本,此版本要和maven-compiler-plugin插件中配置的source和target的版本相對應(yīng)!
比如以上圖中配置的編譯版本是1.9,但是maven實際使用的是1.8的jdk,則會提示“無效的目標發(fā)現(xiàn)版本:1.9”!!!
原理:
Maven是從JAVA_HOME變量中而不是從PATH環(huán)境變量中獲取的Java版本,所以本機即使配置的1.9的默認jdk,但是由于JAVA_HOME指向的是另外一個jdk,就會出現(xiàn)編譯版本的問題!