java - 模块依赖导致错误 :Gradle: Execution failed for task ':app:preDexDebug' in Android Studio

标签 java android android-studio module

我试图向 Android 项目添加一个模块并使主模块依赖于它,但我收到了这个错误:

Error:Gradle: Execution failed for task ':app:preDexDebug'. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_40\bin\java.exe'' finished with non-zero exit value 1

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

安卓工作室 1.2.2。

设置.gradle:

包括':app', ':mylib'

来自应用程序的 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

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

有什么问题吗?非常感谢任何帮助。

最佳答案

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

Adding pure Java unit tests to an Android project

简而言之,将你的java lib模块设置为1.7,那么你的mylib中的build.gradle可能会这样。

apply plugin: 'java'

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

希望对您有所帮助。

关于java - 模块依赖导致错误 :Gradle: Execution failed for task ':app:preDexDebug' in Android Studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31030943/

相关文章:

Android Webview Javascript 注入(inject)

Android:从字符串中解析简单的数学公式

java - Android Studio v3.1.1 中的构建错误

Java - CountDownLatch.await() 可以由编译器重新排序吗

java - 我可以用 java 注释做这种事情吗?

android - 如何从 Android 选项卡内的 Activity 中禁用选项卡

javascript - 无法在react-native android中居中对齐标题标题

android - Gradle:不再支持android.com.android.support:support-v4:xx.x.x

java - 如何在 Spring Boot 中强制刷新 OutputStream/Writer

java - 需要帮助使用 AND 运算符组合两个正则表达式条件