自动重置 Language Level默认为5与 Java Complier默认为1.5

Intellij IDEA用Maven来构建项目,若pom.xml没有指定版本,总是默认Language level 5 与 Java Compiler 1.5。
以下是两种修改方式:

1. 手动进行修改:

  • Java Compiler 1.5
  • 报错:Error:java: Compilation failed: internal java compiler error
  • 解决方式:File -> Settings -> Java Compiler -> Target bytecode version = 1.8
  • Language level 5
  • 报错:Error: java: -source 1.5 中不支持 lambda 表达式 (请使用 -source 8 或更高版本以启用 lambda 表达式)
  • 解决方式:File -> Project Structure -> Language level : 8 - Lambdas,type annotations etc.

手动进行修改缺陷:每次该maven项目的pom.xml更新时,就会自动重置Language level 5 与 Java Compiler 1.5。

2. 使用pom.xml修改:

第一种配置方式:

在<project>元素中看是否有<properties>元素,无着添加下面代码,有则修改下面代码:

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <!--修改Language level-->
    <maven.compiler.source>1.8</maven.compiler.source>
    <!--修改Java Compiler-->
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>

  接下来重启项目就成功了。

第二种配置方式:

Maven项目 -> pom.xml -> 元素体 -> 目标插件中加入红色字体部分,若没有此插件则添加下面代码。(好处是可以进行实时自动更改,不用重启项目)

  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.7.0</version>
        <configuration>
          <!--修改Language level-->
          <source>8</source>
          <!--修改Java Compiler-->
          <target>8</target>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
原文地址:https://www.cnblogs.com/KylinBlog/p/14147917.html