我试图在我使用Intellij终极13.1.4编译一些代码,但我得到以下错误,我不知道这意味着什么:

Information:Using javac 1.7.0_55 to compile java sources
Information:java: Errors occurred while compiling module 'Example'
Information:Compilation completed with 1 error and 0 warnings in 3 sec
Information:1 error
Information:0 warnings
Error:java: invalid source release: 8

我的猜测是它与Java 8和Java 7有关,但我不知道具体是什么。我试图谷歌周围的这条消息,但他们谈论javac或目标发布,所以它似乎并不完全适用。


当前回答

我在这个答案中添加了一个没有提到的路径https://stackoverflow.com/a/26009627/4609353

但是非常重要的是编辑配置

其他回答

对于有这个问题的Gradle用户,如果上面没有帮助,这就是解决我的问题的方法——在你的构建中应用这个声明。gradle文件:

targetCompatibility = 1.6 //or 1.7;1.8 and so on
sourceCompatibility = 1.6 //or 1.7;1.8 and so on

问题解决了!

pom.xml 1.6到1.8的更改

<plugin>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
    </configuration>
</plugin>

对于Grails用户,在BuildConfig中应用这些声明。groovy文件:

grails.project.target.level = 1.6 //or 1.7;1.8 and so on
grails.project.source.level = 1.6 //or 1.7;1.8 and so on

Andreas Lundgren的回答起作用了,我能够编译并运行我的应用程序。

但是,当我试图运行项目相关的JUnit测试时,我收到了相同的错误。运行

gradle -version

从Windows命令提示符显示gradle仍然选择不正确的jdk。为了解决这个问题,我必须设置JAVA_HOME环境变量以指向正确的jdk并重新启动IntelliJ。

我在将一个项目从Java 8“降级”到Java 6时也遇到了同样的问题。原因是IntelliJ中的所有地方都没有更改。

在IntelliJ 13.1.4中,我不得不在以下地方更改Java和SDK版本,以避免出现此错误:

文件->项目结构->项目设置 文件- > 项目结构->模块设置->选项卡:来源:语言级别 File ->项目 结构—>模块设置—>选项卡:依赖项:模块SDK File -> Settings -> Compiler -> Java Compiler ->目标字节码 版本

最后一颗子弹在我的案例中没有更新。一旦我修改了这个,错误就消失了。