错误:Gradle:任务执行失败... dexDebug

时间:2015-08-05 15:39:08

标签: android android-studio

当我尝试在android studio上运行我的应用程序时,我目前遇到问题,我收到以下错误

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

在线查看错误之后,我发现它是由于添加到项目中的任何外部罐子的类导入冗余造成的,但我只添加了2:

  • 公地编解码器
  • 子-简单

没有共同的类。但在我的项目库中,我有以下内容:

  • 程序兼容性-v7-22.2.1
  • 设计22.2.1
  • 支持的注解-22.2.1
  • 支持-v4-22.2.1

所以我想知道冗余是由上述4个库引起的。有谁知道这是否真的是原因?如果这些库中有共同的类?

谢谢

1 个答案:

答案 0 :(得分:1)

我创建了一个新项目,并且一次开始添加一个库,但是在添加它们之后,所有内容都令人惊讶地工作正常,然后当我将java版本更改为1.8时

// instantiate DisplayMetrics
DisplayMetrics dm = new DisplayMetrics(); 
// fill dm with data from current display        
getActivity().getWindowManager().getDefaultDisplay().getMetrics(dm);
// loc will hold the coordinates of your view
int[] loc = new int[2];
// fill loc with the coordinates of your view (loc[0] = x, looc[1] = y)
yourImageView.getLocationOnScreen(loc);
// calculate the distance from the TOP(its y-coordinate) of your view to the bottom of the screen
int distance = dm.heightPixels - loc[1];

我开始收到我之前遇到的错误,所以当我将其切换回1.7时,我的应用程序开始工作了。所以我猜JDK和gradle版本之间存在兼容性问题。