【问题标题】:How to specify sourceCompatibility compile options when using the Android Gradle Experimental plugin使用 Android Gradle Experimental 插件时如何指定 sourceCompatibility 编译选项
【发布时间】:2016-05-09 23:29:50
【问题描述】:

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

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

对于新的 Experimental 插件,我在 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?

谢谢。

【问题讨论】:

    标签: android android-gradle-plugin gradle-experimental retrolambda


    【解决方案1】:

    必须是这样的:

    model {
        android {
            compileSdkVersion = 23
            buildToolsVersion = "23.0.1"
            compileOptions.encoding = 'windows-1251'
    
           compileOptions.with {
             sourceCompatibility = JavaVersion.VERSION_1_6
             targetCompatibility = JavaVersion.VERSION_1_6
           }
        }
    }
    

    【讨论】:

    • 为我工作。谢谢!
    • 只是补充一下:这是在 android\app\build.gradle 文件中,而不是在根 gradle 文件中
    猜你喜欢
    • 2015-02-01
    • 2016-03-16
    • 1970-01-01
    • 2016-02-04
    • 1970-01-01
    • 1970-01-01
    • 2016-04-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多