我按照Android Java 8功能手册进行操作.它适用于Android应用程序项目.但是当我尝试将它与Android库项目一起使用时,我得到了
Error:Library projects cannot enable Jack. Jack is enabled in default config.
Run Code Online (Sandbox Code Playgroud)
部分解决方案: 我使用Gradle Retrolambda插件启用了lamdba表达式.
Oli*_* M. 18
我遇到了同样的问题并尝试了不同的方法.它现在适用于我而不使用retrolambda(在运行时产生一些奇怪的错误).杰克也因你提到的原因而不活跃.google.com上有一个关于此主题的有趣错误帖子:https://code.google.com/p/android/issues/detail?id = 211386
这是我的build.gradle脚本,我使用bug文章中的解决方法来修复编译期间的"MethodType not found"异常.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.2'
}
}
apply plugin: 'com.android.library'
repositories {
mavenCentral()
}
// Java8 not fully supported in library projects yet, https://code.google.com/p/android/issues/detail?id=211386
// this is a temporary workaround to get at least lambdas compiling
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xbootclasspath/a:" + System.properties.get("java.home") + "/lib/rt.jar"
}
}
android {
compileSdkVersion 24
buildToolsVersion "24"
defaultConfig {
minSdkVersion 10
targetSdkVersion 24
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4385 次 |
| 最近记录: |