您的位置:首页 > 移动开发

解决:Error:Execution failed for task app:predexdebug

2016-08-08 23:39 615 查看
今天新建了一个项目,编译的时候报如下错误:
Error: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

解决方法一:


Android项目,在主工程build.gradle下添加日下语句:

android {
...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_6
targetCompatibility JavaVersion.VERSION_1_6
}
...
}


Java 项目中添加

apply plugin: 'java'

version '1.8.1'
group   'com.yourcompany.package'

sourceCompatibility = JavaVersion.VERSION_1_6   //these two lines
targetCompatibility = JavaVersion.VERSION_1_6   //are the only ones that matter


stackoverflow地址:http://stackoverflow.com/questions/23847482/error-gradle-execution-failed-for-task-apppredexdebug

解决方法二:

查看Error console,找到错误jar包,删除即可。

解决方法三:

有可能是因为jar重复引用导致的问题(日志略有不同,Error:Execution
failed for task 'app:DexDebug'.)

此问题多半由support-v4 和 support-v7 造成,找到重复项,删除或使用 provided 引用即可。

解决方法四:

我用的就是此方法,但我的情况比较特殊,因为我的PC上装了两个不同版本的JDK,且都配置在环境变量里。

所以

第一步:删除旧的jdk;

第二步:修改 app.imp 文件(JDK1.7为例)

<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id="SimpleDialog" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="java-gradle" name="Java-Gradle">
<configuration>
<option name="BUILD_FOLDER_PATH" value="$MODULE_DIR$/build" />
<option name="BUILDABLE" value="false" />
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

第三步:删除 .idea / .gradle / build 文件下;

第四步: clean - 编译 即可 ; 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐