我正在测试Java 8的一些新特性,并将示例复制到我的IDE(最初是Eclipse,然后是IntelliJ),如下所示
Eclipse对lambda表达式不提供任何支持,IntelliJ不断报告错误
此语言级别不支持Lambda表达式
我想知道这是否是我的安装、代码或支持的问题。
我正在测试Java 8的一些新特性,并将示例复制到我的IDE(最初是Eclipse,然后是IntelliJ),如下所示
Eclipse对lambda表达式不提供任何支持,IntelliJ不断报告错误
此语言级别不支持Lambda表达式
我想知道这是否是我的安装、代码或支持的问题。
当前回答
首先检查您使用的JDK版本,它应该高于1.8。
如果是,则继续执行以下步骤。
在Intellij中更改项目和模块的语言级别。
项目
1.文件->项目结构->项目->项目语言级别 将其更改为8,lamba表达式才能工作 2.文件->项目结构->模块->项目语言级别 将其更改为8,lamba表达式才能工作
其他回答
在应用程序级别构建中添加以下行。gradle在Android项目中解决了问题。
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
在IntelliJ IDEA 15中使用Java 8 (lambdas等)编译;
CTRL + ALT + SHIFT + S或文件/项目结构 打开项目选项卡 将项目SDK设置为兼容的java版本(1.8) “项目语言级别”设置为“8” 打开模块选项卡 设置“语言级别”为“8”,单击“确定” CTRL + ALT + S或文件/设置 构建,执行,部署/编译器/ Java编译器 将目标字节码版本更改为1.8,单击确定
IntelliJ IDEA:
在文件菜单→项目结构→项目,将项目语言级别更改为8.0 - Lambdas,输入注释等。
Android 3.0+ Go文件→项目结构→模块→应用程序和属性选项卡设置源兼容性和目标兼容性为1.8 (Java 8)
截图:
这个答案对新更新的intelliJ不起作用…为了新智能…
进入——> file——> Project Structure——> Global Libraries ==>设置为JDK 1.8或更高版本。
also File——> project Structure——> projects ===> set "project language manual" = 8
——>项目结构——>项目sdk ==>
这将为您的项目启用lambda表达式。
检查以下设置:
文件->项目结构->项目标签。 项目SDK应设置为8或以上 文件- >项目结构- >模块。 *检查您或所有模块的语言级别设置为8或以上 文件->设置(或其他设置->首选项在新Idea版本的新项目) *搜索Java编译器,检查项目字节码版本 并且每个模块的字节码版本设置为8或以上
您的问题可能属于上述定义的任何一类。