Androidライブラリモジュールでラムダ式を使用すると、コンパイラ例外com.sun.tools.javac.code.Symbol$CompletionFailure: class file for java.lang.invoke.MethodType not found
が返されます。AndroidライブラリモジュールでLambdaがコンパイラ例外を発生させる
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
。私はこれを適切な構成で動作させたいと思っています。私はどこかのステップを欠いていると思います。
参考文献[link](http s://github.com/evant/gradle-retrolambda)。これはあなたを助けるかもしれません.. – Sabari