【发布时间】:2016-11-09 08:11:48
【问题描述】:
我正在构建一个必须使用 Java 8 库的应用。为了实现源代码兼容性,我在应用的 build.gradle 中添加了以下内容:
compileSdkVersion 23
buildToolsVersion "25.0.0"
defaultConfig {
applicationId "SOME_APP"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
// enable Jack
jackOptions {
enabled true
}
}
//...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
在构建解决方案时,我收到以下错误:
Error:com.android.sched.util.config.PropertyIdException: Property 'jack.import.type.policy' (in -D option): The value must be {keep-fırst,faıl} (case insensitive) but is 'keep-first'
Error:com.android.sched.util.codec.ParsingException: The value must be {keep-fırst,faıl} (case insensitive) but is 'keep-first'
如您所见,此错误是由土耳其语İ i I ı 字符引起的。其他人收到此错误,这是issue ticket。此问题已标记为在未来版本中解决,但由于项目的重要性,我不能等待这个未来版本。
问题单中有一个建议的解决方案:
我提出的一个棘手的解决方案: 在 gradle(几乎 9 个)中为所有与 jack 相关的任务创建运行配置,并使用 -Duser.language=en 更新 VM 选项部分
我尝试通过编辑 VM 选项来应用它
并将-Duser.language=en 添加到 studio.exe.vmoptions 文件中。
不幸的是,这并不能解决问题,每当我尝试构建项目时都会遇到同样的错误。
- 我当前的配置正确吗?
- 还有其他方法可以解决这个问题吗?
【问题讨论】:
标签: java java-8 android-gradle-plugin android-studio-2.2 android-jack-and-jill