android studio:-source 1.7不支持lambda表达式(使用-source 8或更高版本来启用lambda表达式)

Chi*_*oni 32 java lambda android

很高兴知道java 在Java版本8中引入了Lambda表达式.

我在android studio工作.我注意到它DialogInterface.OnClickListener()显示下划线并变成灰色,如下所示:

在此输入图像描述

所以,我alter + enter在那一行上找到了用Lambda Expressions替换代码的选项,如下所示:

在此输入图像描述

结果如下:

在此输入图像描述

运行代码后,它显示了这个错误:

错误:(160,69)错误:-source 1.7不支持lambda表达式(使用-source 8或更高版本启用lambda表达式)

但我已经在使用java了jdk1.8.0_31.还有什么我需要安装吗?

任何人都可以帮我解决..

Ste*_*ngo 11

您无法为Android编译Java 8源代码,因为Android SDK尚不支持Java 8.

但是有一种方法可以在代码中使用Lambdas - RetroLambda.这是一个小小的黑客,允许您在项目中使用Java 8的一些功能.


Sil*_*ght 6

我认为Android开发还没有准备好Java 8.Android Studio支持编译级别,Java 7无论您是安装Java 7还是Java 8.所以,如果你想使用新功能Java 8,我想你必须等待Android Studio支持compile level Java 8.