我一直在为Jack编译器烦恼。我使用Intellij IDEA进行Androidd应用程序开发。
我已阅读过该文件:
documentation for jack compiler
这是我的build.gradle配置:
android {
...
defaultConfig {
...
jackOptions {
enabled true
}
...
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
...
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.2.1'
compile ('io.socket:socket.io-client:0.8.1') {
// excluding org.json which is provided by Android
exclude group: 'org.json', module: 'json'
}
compile 'com.android.support:design:24.2.1'
compile 'com.android.support:cardview-v7:24.2.1'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
compile 'io.reactivex:rxjava:1.2.0'
compile 'io.reactivex:rxandroid:1.2.1'
}
但我仍然收到此错误:
Error:Gradle: Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
Gradle Build Error:
Error:(12, 0) Gradle DSL method not found: 'jackOptions()'
Possible causes:<ul><li>The project 'App' may be using a version of Gradle that does not contain the method.
<a href="open.wrapper.file">Open Gradle wrapper file</a></li><li>The build file may be missing a Gradle plugin.
<a href="apply.gradle.plugin">Apply Gradle plugin</a></li>
不知道如何解决这个问题。
答案 0 :(得分:1)
defaultConfig {
...
jackOptions {
enabled true
}
// inside defaultConfig
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}