南阳网站建设南阳,免费做问卷的网站,wordpress主题 工作室,做淘宝客网站有什么服务器摘自个人印象笔记2021-05-07#xff1a;https://app.yinxiang.com/fx/55e1d5f4-aeea-446a-a768-0f1a48195f5b(图显示不完整可查看原笔记内容)1#xff1a;确保IDE中的编译版本正确 在idea中#xff0c;主要看项目属性中和setting的java compiler中对应的jdk版本是否正确https://app.yinxiang.com/fx/55e1d5f4-aeea-446a-a768-0f1a48195f5b(图显示不完整可查看原笔记内容)1确保IDE中的编译版本正确 在idea中主要看项目属性中和setting的java compiler中对应的jdk版本是否正确如下 项目属性中查看
setting中查看
2确保pom文件中的maven-compiler-plugin插件配置正确 org.apache.maven.plugins maven-compiler-plugin 3.1 1.9 1.9
3如果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项都正确但仍然提示“无效的目标发行版”则需要重点注意 用以下命令查看mvn所使用的jdk是哪个版本
mvn -version 输出如下字样
注意其中的Java version代表着maven使用的jdk版本此版本要和maven-compiler-plugin插件中配置的source和target的版本相对应 比如以上图中配置的编译版本是1.9但是maven实际使用的是1.8的jdk则会提示“无效的目标发现版本1.9”
原理 Maven是从JAVA_HOME变量中而不是从PATH环境变量中获取的Java版本所以本机即使配置的1.9的默认jdk但是由于JAVA_HOME指向的是另外一个jdk就会出现编译版本的问题