如何在使用Android Gradle Experimental插件时指定sourceCompatibility编译选项

时间:2016-05-09 23:29:51

标签: android android-gradle gradle-experimental retrolambda

我目前正在其中一个应用中使用Android Gradle Experimental插件,我希望能够使用retrolambda库。其中一个要求是指定一些compileOptions。在普通的android构建插件中,这可以工作:

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

对于新的实验插件,我在model.android中添加了这个:

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

但是,上述操作导致了一个gradle同步错误:

Gradle 'ApkTestRunner' project refresh failed
Error:Cause: com.android.build.gradle.managed.AndroidConfig$Impl

如何使用新的Android Experimental Gradle插件设置sourceCompatibility和targetCompatibility?

感谢。

1 个答案:

答案 0 :(得分:4)

必须是这样的:

model {
    android {
        compileSdkVersion = 23
        buildToolsVersion = "23.0.1"
        compileOptions.encoding = 'windows-1251'

       compileOptions.with {
         sourceCompatibility = JavaVersion.VERSION_1_6
         targetCompatibility = JavaVersion.VERSION_1_6
       }
    }
}