我试图在我使用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或目标发布,所以它似乎并不完全适用。


当前回答

我也有同样的问题,解决方案是在pom.xml文件中更改我的java版本。

我把11改成了8。

其他回答

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

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

gradle -version

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

如果你使用Gradle作为构建工具,并且在执行Gradle任务(即TomcatRun)时得到这个错误,请看看我对同一问题的另一个答案

Javac:无效目标版本:1.8

首先检查pom.xml(如果有的话) 检查模块的JDK依赖关系。确保它是1.8 要做到这一点,请转到项目结构-> SDK 将路径添加到存储1.8的位置(jdk1.8.0_45. exe)。JDK在我的情况下) 应用更改 现在,转到项目结构->模块 将Module SDK更改为1.8 应用更改

瞧!你完成

在我的例子中,细微差别是我得到了一个无效的源代码版本11(而不是OP的8)。我尝试了上面所有的解决方案

Gradle JVM版本,Java编译器字节码版本,模块语言。

我把上面所有的都设置为java 8(或1.8),因为这是我机器上的库。

问题在于构建。Gradle文件有

sourceCompatibility = '11'

将此更改为8,它停止抛出'compile failed invalid release 11'错误

解决方案参考:github论坛

您需要单击该项目 打开模块设置,更改JDK的路径,如果在文件POM中使用JDK 1.8,请将JDK 1.8配置为正确的路径。