Когда я использую выражение лямбда в модуле библиотеки Android, я получаю исключение компилятора com.sun.tools.javac.code.Symbol$CompletionFailure: class file for java.lang.invoke.MethodType not found
.Lambda вызывает исключение компилятора в модуле библиотеки Android
Лямбда-выражения компилируются без ошибок при использовании в прикладном модуле Android.
Образец проекта, чтобы продемонстрировать эту проблему, можно найти здесь:
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. Я бы хотел, чтобы это работало при правильной настройке. Я предполагаю, что у меня где-то не хватает шага.
Ссылка [ссылка] (http s: //github.com/evant/gradle-retrolambda). Это может помочь вам. – Sabari