【问题标题】:Why do I get error "Lamba expressions are not supported in -source 1.6"?为什么会出现错误“-source 1.6 不支持 Lambda 表达式”?
【发布时间】:2017-08-13 17:19:31
【问题描述】:

我正在使用 IntelliJ Idea,但出现此错误。

-source 1.6 不支持Lamba 表达式

在我用 gradle 做了一些事情后,我从 2016 年更新到 2017 年的社区版时得到了这个。

设置:Java 编译器:项目字节码版本:1.8 模块字节码版本:1.8 项目 SDK:1.8 项目语言级别:默认(8) 模块 1.8 也是如此

【问题讨论】:

  • 您可能不小心将您的 java 版本切换到了 1.6。尝试将 java 更新到 1.8 以访问 lambda 函数 api。
  • 我只安装了 java 8,SDK 和 JRE 8 版本 144
  • java -version 命令检查你的java 版本。如果由于某种原因您拥有 1.6 版本,则将其卸载或将 JAVA_HOME 环境变量设置为 jre_1.8.X/bin 目录。
  • 检查你的 IDE 设置,你可能有它(或 gradle)到 Java 1.6
  • This answer/suggestion 可能有帮助

标签: java intellij-idea


【解决方案1】:

检查Settings -> Compiler - > Java Compiler。 如果这不起作用, 对于 MAVEN: 你可以在你的 pom.xml 中设置它,像这样:

<properties>
  <maven.compiler.source>1.7</maven.compiler.source>
  <maven.compiler.target>1.7</maven.compiler.target>
</properties>

对于毕业:

sourceCompatibility = "1.8"; 
targetCompatibility = "1.8"; // defaults to sourceCompatibility

【讨论】:

    【解决方案2】:

    因为在您的 IDEA 中,项目语言级别设置为 "6 - @Override in interface"

    解决goto:

    File -> Other Setting -> Default Project Structure
    

    现在将项目语言级别更改为Lambdas , type annotation etc.,然后点击确定

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-30
      • 1970-01-01
      • 2017-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多