如果您使用的是 Maven
将编译器插件添加到顶级project
节点下的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>
java compiler
在设置窗口中,将目标字节码设置为1.8
(或对于 Java9 为9 )
关于 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>
我通过转到项目结构 -> 模块来解决此问题,找到有问题的模块,单击Dependencies选项卡,将Module SDK
更改为Project SDK
。
我只是通过将目标编译版本更改为 1.8 来修复它。在里面:
文件 >> 设置 >> 构建,执行,部署 >> 编译器 >> Java 编译器
我通过修改 POM 文件来修复它。请注意在投票最高的答案下的最后一条评论。
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
源必须与目标匹配。