IDEA:javac:源代码版本 1.7 需要目标版本 1.7IntelliJ 15, 2016 & 2017IntelliJ 13 & 14

2022-08-31 04:22:58

当运行JUnit测试时,使用IntelliJ IDEA,我得到

enter image description here

我该如何更正此问题?

  • 使用开发工具包 1.7
  • 模块语言级别为 1.7

Maven 构建工作正常。(这就是为什么我相信这在IDEA配置问题中)


答案 1

最有可能的是,您从 Maven 导入了不正确的编译器选项,如下所示:

compiler options

还要检查屏幕截图中列出的项目和模块字节码(目标)版本设置。

配置语言级别的其他位置:

  • 项目结构|项目

project

  • 项目结构|模块(检查每个模块)|来源

sources

Maven 默认语言级别1.5 (5.0),您将在上面的屏幕截图中看到此版本作为模块语言级别。

这可以使用内部的maven-compiler-plugin配置进行更改:pom.xml

<project>
  [...]
  <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>
  [...]
</project>

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

IntelliJ IDEA 将在“Maven 项目”工具窗口中重新导入 Maven 项目后遵循此设置:

reimport


答案 2

IntelliJ 15, 2016 & 2017

与下面讨论的IntelliJ 13和14类似,但在“设置/首选项”面板中具有额外的级别:“设置”>构建,执行,部署>编译器>Java编译器

enter image description here

IntelliJ 13 & 14

在 IntelliJ 13 和 14 中,检查“编译器> Java 编译器 UI >设置”,以确保模块中的字节码版本不同。

enter image description here


推荐