如果您正在使用Maven构建Java项目,可能是在Eclipse中,或者是通过运行mvn install在命令提示符下构建的,并且构建失败并显示诸如“无效的目标发行版:1.7”或“无效的目标发行版:1.8”之类的错误,那么您来了到正确的地方。 在本文中,我将向您显示发生此错误的原因,以及即使在您的计算机上安装了更高的Java版本(如Java 9、10,或者可能在下个月使用Java 11)也可以处理这些错误。 问题的根本原因是,您在pom.xml文件中为Maven编译器插件指定了更高的Java版本 ,而不是Maven在系统中所知道的,因此这就是说无效的目标发行版的原因。
一个简单的解决方案是在pom.xml中减少目标版本,或者如果要在更高版本中构建项目,则安装新的Java版本。
但是,解决此问题的关键是要知道Maven从JAVA_HOME变量而不是从PATH环境变量中选择Java版本。
这意味着即使您已经安装了JDK 8,但是如果您的JAVA_HOME仍在引用JDK 1.7,那么您将收到此错误。
幸运的是,您可以发现,我的意思是您的Maven使用的是哪个Java版本。 只需从命令提示符处运行mvn -version命令,它将打印JAVA_HOME变量的值并确认它正在使用哪个版本的JDK来构建您的项目。
最近,当我遇到此错误时,我正在旧计算机上使用Maven构建Java项目。 我以为自己拥有最新的Java版本,这就是为什么我对此错误感到惊讶。
这是我的Maven pom.xml的样子:
<plugin>
<gro