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

使用JDK:

项目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>

其他回答

很多关于Maven的答案都是正确的,但是你不需要直接配置插件。

就像在Apache Maven编译器插件的wiki页面上描述的那样,你可以设置插件使用的2个属性。

<project>
  [...]
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  [...]
</project>

我只是通过将目标编译版本更改为1.8来解决这个问题。其:

文件>>设置>>构建、执行、部署>>编译>> Java编译器

去文件>设置>构建,执行,部署>编译器> Java编译器如果在Mac上,它在Intellij IDEA >首选项…>构建,执行,部署> Java编译器 将您正在工作的模块的目标字节码版本更改为1.8。

如果您正在使用Maven

将编译器插件添加到顶级项目节点下的pom.xml:

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

(摘自评论。)

注意:如果您不介意重新导入项目,那么您真正需要做的唯一一件事就是更改pom并重新导入项目,然后IntelliJ将获得正确的设置,您不必手动更改它们。

这看起来就像没有正确配置编译器插件时Maven生成的那种错误。下面是一个Java 8编译器配置的例子。

<project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<!-- ... -->

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

<!-- ... -->

</project>

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

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