错误:(23,26)在-source 1.5中不支持java:lambda表达式(使用-source 8或更高版本来启用lambda表达式)

时间:2017-07-22 11:18:27

标签: java maven intellij-idea

我已将下面的源目标添加到pom.xml中。

<?xml version="1.0" encoding="UTF-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">
  <modelVersion>4.0.0</modelVersion>

  <groupId>priv.winnie</groupId>
  <artifactId>newfeature</artifactId>
  <version>1.0-SNAPSHOT</version>

<dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.10</version>
  </dependency>
</dependencies>

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

我还在IntelliJ中将Java编译器更改为1.8。我正在运行OpenJDK 1.8.0。

为什么它仍然使用Java源代码级1.5来编译代码?

3 个答案:

答案 0 :(得分:2)

转到项目属性&gt; java编译并检查那里,jdk版本。

enter image description here

答案 1 :(得分:1)

解决了这个问题。我发现没有必要将java1.8添加到pom.xml中。我只需要将Modules-&gt;语言级别更改为8 - Lambdas,输入注释等。

答案 2 :(得分:0)

尝试按照这个答案

  

右键单击项目 - >属性

完成此操作后,您必须再做两件事

  

01选择Java Build Path - &gt; Go to libraries tab-&gt;选择JRE library system-&gt; Edit - &gt; Install JRE-&gt; select and Edit-&gt; Directory-&gt; Select Jdk(而不是jre )

向下滚动以找到jdk

  
      
  1. 选择Project Facets-&gt;将java版本设置为1.8
  2.