2017-08-02 8 views
2

jdk 8を使用し、Jack Optionsを有効にしたアンドロイドアプリモジュールを持っていました。その後、Androidライブラリモジュールに変換します。そして、私はgradleをビルドすることからJack Optionsを削除しなければなりません。そして、AARファイルを作成しようとすると、ラムダ式は私に以下のエラーを与えます。Androidライブラリモジュールのラムダ式が動作しない

Error:(59, 25) error: cannot find symbol method metafactory(Lookup,String,MethodType,MethodType,MethodHandle,MethodType) 

このエラーを与えるコードは、

Runnable r=() -> { 
     appManager.startApp(definition,identifier); 
}; 

私のビルドGradleでは、この問題の原因は何

Apply plugin: 'com.android.library' 

android { 
    compileSdkVersion 26 
    buildToolsVersion "26.0.0" 
    defaultConfig { 
     minSdkVersion 18 
     targetSdkVersion 26 
     versionCode 1 
     versionName "1.0" 

    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 

compileOptions { 
    sourceCompatibility JavaVersion.VERSION_1_8 
    targetCompatibility JavaVersion.VERSION_1_8 
} 
} 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    compile 'com.android.support:appcompat-v7:26.+' 
    compile 'com.android.support.constraint:constraint-layout:1.0.2' 
    testCompile 'junit:junit:4.12' 
} 

ですか?

+0

あなたが解決策を見つけました?? –

答えて

0

レトロなラムダプラグインを適用するのを忘れました。

は、あなたのbuild.gradleファイルに次の行を追加します。

apply plugin: 'me.tatarka.retrolambda' 
関連する問題