我见过类似的问题,但还没有找到答案。
使用maven编译,我得到:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project api: Fatal error compiling: invalid target release: 1.7 -> [Help 1]
这是pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
Javac版本:
javac 1.7.0_25
Java版:
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
知道它可能是什么吗?
答案 0 :(得分:158)
您需要将JAVA_HOME设置为jdk7主目录,例如在Microsoft Windows上:
或在OS X上:
答案 1 :(得分:42)
除了设置JAVA_HOME
环境变量之外,您还必须确保在Maven运行配置中使用正确的JDK。转到运行 - &gt; 运行配置,选择您的Maven Build配置,转到JRE选项卡并设置正确的Runtime JRE。
答案 2 :(得分:3)
在IntelliJ IDEA中,当我导入一个运行良好且运行Java 1.7的项目时,这种情况发生在我身上。我显然没有通知IntelliJ我的机器上已经安装了java 1.7,而且它没有找到我的$JAVA_HOME
。
在Mac上,这可以通过以下方式解决:
右键单击模块|模块设置|项目
并通过在Project SDK中选择“新建”来添加1.7 SDK。
然后转到主要的IntelliJ IDEA菜单|偏好| Maven |转轮
并选择正确的JRE。在我的情况下,它正确更新使用Project SDK,现在是1.7。
答案 3 :(得分:1)
当maven在Eclipse之外工作,但在JDK更改后发出此错误时,请转到Maven运行配置,在主页面的底部,有一个“Maven Runtime”选项。我正在使用Embedded Maven,所以在切换它以使用我的外部maven后,它就可以工作了。
答案 4 :(得分:0)
这可能适用于很多东西,但对Maven来说还不够,当然也不适用于maven编译器插件。
检查迈克在这里回答他自己的问题: stackoverflow question 24705877
这解决了我在eclipse中的命令行和问题。
另外,@林高回答stackoverflow question 2503658并且使用$ JAVACMD变量可能会有所帮助,但我自己还没有测试过。