当我在 Android 库模块中使用 lambda 表达式时,我收到了一个编译器异常com.sun.tools.javac.code.Symbol$CompletionFailure: class file for java.lang.invoke.MethodType not found
。
在 Android 应用程序模块中使用 Lambda 表达式时编译没有错误。
可以在此处找到演示该问题的示例项目:
https ://github.com/adamdye/AndroidLambdaIssue
示例中有趣的类是 MyLibrary.java 和 MainActivity.java。每个类都包含相同的表达式。
设置
Android Studio 2.2 preview 1
min/target SDK version = android-N
build tools version = 24.0.0.rc4
jack compiler enabled
source/target compatibility = 1.8
Gradle version = 2.10
Android Plugin Version = 2.2.0-alpha1
JDK = java 8
我对使用复古 lambda 不感兴趣。我想通过正确的配置来解决这个问题。我想我在某处错过了一步。