使用IntelliJ IDE不能编译任何项目。设置截图如下:

使用JDK:

项目SDK及语言级别:

语言水平:

有人有什么想法吗?


当前回答

如果其他答案都无效,请检查模块SDK。

在我将项目SDK更新到1.8、Javac编译器更新到1.8等之后,这个错误就跳出来了。对我来说,问题的设置是“模块SDK”。

(在Linux上)进入文件>项目结构…然后在打开的窗口中,选择项目设置下的模块。从列表中选择有问题的模块,然后选择Dependencies选项卡,确保模块SDK设置正确。

其他回答

对于Intellij,使用Maven,您必须检查Intellij是否自动导入了您的项目。 您可以单击编辑器右侧的Maven选项卡进行检查。

如果您的Project不在这里,那么单击+添加pom.xml文件。

显然,项目还必须有相关的<build/>:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
    </plugin>

在我的情况下,我通过打开项目的。iml文件(它位于项目根文件夹,名称与项目名称相同),并将line <orderEntry type="jdk" jdkName="1.7" jdkType="JavaSDK" />更改为<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />来修复这个问题

我在其他答案中配置了所有内容,但由于某种原因,Idea错误地更新了.iml文件。

我已经检查了以上所有的,但错误仍然发生。

但重新导入所有maven项目(maven项目面板内的重新加载按钮)在我的情况下是有效的。

解决这个问题有两种方法:

设置(文件->设置->构建,执行,部署-> Java编译器): 在pom.xml中添加一个构建部分:

我找到的最快的方法是:

按:CTRL + SHIFT + A (Mac⌘+ SHIFT + A) 类型:Java编译器 新闻:输入

在“设置”窗口中,将Target字节码设置为1.8

(对于java9来说是9)