繁体   English   中英

模块依赖性导致错误:Gradle:Android Studio中任务':app:preDexDebug'的执行失败

[英]Module dependency leads to Error:Gradle: Execution failed for task ':app:preDexDebug' in Android Studio

我试图将模块添加到Android项目并使主模块依赖于它,我收到此错误:

错误:Gradle:任务':app:preDexDebug'的执行失败。 com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'命令'C:\\ Program Files \\ Java \\ jdk1.8.0_40 \\ bin \\ java.exe''以非结束零退出值1

我有一个主模块应用程序的项目,并添加了一个模块mylib和应用程序依赖于mylib。

Android Studio 1.2.2。

settings.gradle:

include ':app', ':mylib'

来自app的build.gradle:

    apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion "21.1.2"

    compileOptions {
        sourceCompatibility org.gradle.api.JavaVersion.VERSION_1_8
        targetCompatibility org.gradle.api.JavaVersion.VERSION_1_8
    }

...

}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(':mylib')
}

来自mylib的build.gradle:

apply plugin: 'java'

sourceCompatibility = org.gradle.api.JavaVersion.VERSION_1_8
targetCompatibility = org.gradle.api.JavaVersion.VERSION_1_8

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
}

JAVA_HOME变量:

JAVA_HOME=C:\Program Files\Java\jdk1.8.0_40

当我将行编译项目(':mylib')添加到build.gradle时,问题就开始了,有时当我重建项目时,但总是在我尝试运行它时。 VERSION_1_8语句无法解决问题。

有什么不对? 任何帮助将非常感谢。

我有同样的问题,我从这个纯java单元测试教程中找到了解决方案,它说Android目前支持的是Java 1.7。

将纯Java单元测试添加到Android项目中

简而言之,只需将java lib模块设置为1.7,因此mylib中的build.gradle可能就是这样。

apply plugin: 'java'

dependencies {
    sourceCompatibility = 1.7
    targetCompatibility = 1.7
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

希望这可以帮到你。

同样的问题发生在我身上,我只做了两个简单的步骤,我的问题就消失了:

1)构建 - >清理项目2)构建 - >重建项目

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM