无效的目标版本:1.7

11 浏览
0 Comments

无效的目标版本:1.7

我看到过类似的问题,但尚未找到答案。

使用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文件的内容:


    org.apache.maven.plugins
    maven-compiler-plugin
    3.0
    
        1.7
        1.7
        UTF-8
    

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
0 Comments

问题原因:没有设置JAVA_HOME到jdk7的目录。

解决方法:在操作系统的环境变量中设置JAVA_HOME为jdk7的目录。

在Windows系统中,设置JAVA_HOME为"C:\Program Files\Java\jdk1.7.0_40"。

在OS X系统中,设置JAVA_HOME为"/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home"。

在Mac系统中,如果安装了jdk6和jdk7,可以在~/.profile中强制设置JAVA_HOME为jdk7的目录,命令如下:export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)

也可以使用jdk8来实现jdk7的兼容性。

在Mac系统中,重新加载~/.profile文件,命令如下:source ~/.profile

这对很多情况可能有效,但对于Maven和Maven编译插件来说是不够的。可以参考Mike在stackoverflow上的答案解决这个问题,链接为:stackoverflow question 24705877。这个方法对我在命令行和Eclipse中都解决了这个问题。还可以参考stackoverflow上的答案解决这个问题:stackoverflow question 2503658,以及使用$JAVACMD变量的方法。

0
0 Comments

出现(invalid target release: 1.7)这个问题的原因是使用了错误的JDK版本。解决方法是在Maven运行配置中设置正确的运行时JRE。

除了设置JAVA_HOME环境变量之外,还要确保在Maven运行配置中使用了正确的JDK。可以按照以下步骤进行操作:先点击“Run” -> “Run Configuration”,选择你的Maven Build配置,然后进入JRE选项卡,设置正确的Runtime JRE。

有一位用户评论说,他在创建配置时默认选了“Alternate JRE”,导致出现了这个问题。他提醒其他用户,要确保maven插件和配置都更新正确。

另一位用户说,他的JAVA_HOME设置正确,但还是遇到了这个问题,通过上述解决方法解决了问题,感谢提供解决方案的用户。

以上就是出现(invalid target release: 1.7)这个问题的原因以及解决方法的内容。

0
0 Comments

在IntelliJ IDEA中,当我导入一个之前运行正常且使用Java 1.7的项目时,出现了这个问题。显然,我没有告诉IntelliJ我已经在我的机器上安装了Java 1.7,因此它找不到我的$JAVA_HOME

在Mac上,解决方法如下:

1. 右键点击模块 | 模块设置 | 项目,然后通过在项目SDK中选择“新建”,添加1.7 SDK。

2. 然后进入IntelliJ IDEA的主菜单 | 首选项 | Maven | Runner,选择正确的JRE。在我的情况下,它会正确更新为使用项目SDK,即1.7版本。

3. 需要注意的是,至少在Mac上,IntelliJ有项目设置和首选项。我需要进入首选项 -> 构建执行,部署 -> Java编译器,然后根据需要设置项目的字节码版本。

0