【问题标题】:Error in Android Studio BuildAndroid Studio 构建中的错误
【发布时间】:2014-06-18 20:07:54
【问题描述】:

我的系统:Windows 7、Android Studio V0.5.2、JDK V1.7.0_25

我已经看到这个讨论了几个不同的地方,但似乎没有一个解决方案适合我(或者我没有尝试过正确的组合)。

问题是,当我使用 Android Studio 构建项目并尝试运行它时,我收到错误消息: **“错误:Gradle:任务':app:packageDebug'执行失败。

class org.bouncycastle.asn1.ASN1Primitive 覆盖 final 方法 equals.(Ljava/lang/Object;)Z"**

这似乎与有弹性的城堡 dll 有关。我很想改变我的 JDK 中的东西来解决这个问题 - 但如果需要我会这样做。

有没有人对此有明确的解决方案(Android Studio 团队会解决这个问题吗?从系统中四处寻找和删除 dll 并不是一个好的最终解决方案)。

这是我系统上所有 bc* 文件的列表:

C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\bcprov-ext-jdk15on-1.46.jar
C:\Program Files\Java\jdk1.7.0_25\bin\bcprov-ext-jdk15on-1.46.jar
C:\Users\scott.coleman\Desktop\bcprov-ext-jdk15on-1.46.jar
C:\Program Files\Java\jre7\lib\ext\bcprov-ext-jdk15on-1.46.jar
C:\eclipse\configuration\org.eclipse.osgi\bundles\270\1\.cp\lib\bcprov-ext-jdk15on-148.jar
C:\Program Files\Charles\lib\bcprov-jdk14-143.jar
C:\Users\scott.coleman\AppData\Local\Temp\Rar$EXa0.979\gradle-1.10\lib\plugins\bcprov-jdk15-1.46.jar
C:\Users\scott.coleman\.gradle\wrapper\dists\gradle-1.10-all\1t6fjo8i1s1ddu1afn3ioaglko\gradle-1.10\lib\plugins\bcprov-jdk15-1.46.jar
C:\Users\scott.coleman\Desktop\bcprov-jdk15on-1.48.jar
C:\Android\android-sdk\tools\lib\bcprov-jdk15on-1.48.jar
C:\eclipse\configuration\org.eclipse.osgi\bundles\247\1\.cp\libs\bcprov-jdk15on-1.48.jar
C:\Program Files (x86)\Android\android-studio\plugins\android\lib\bcprov-jdk15on-1.48.jar
C:\Users\scott.coleman\.gradle\caches\modules-2\files-2.1\org.bouncycastle\bcprov-jdk15on\1.48\960dea7c9181ba0b17e8bab0c06a43f0a5f04e65\bcprov-jdk15on-1.48.jar

【问题讨论】:

标签: android build android-studio


【解决方案1】:

今天我卸载了 Android Studio Beta 并安装了最新的 Android Studio 版本,当我尝试创建一个新项目时,我收到了相同的 gradle 错误(Win7、Android Studio 1.0.2、JDK 1.7.0_75)。首先,我尝试替换 bcprov-jdk15on-1.48.jar 但这并没有为我解决。然后我尝试了以下方法:

  1. 关闭 Android Studio
  2. 删除 C:\Users\.gradle
  3. 删除 C:\Users\.AndroidStudio
  4. 删除 C:\Users\.AndroidStudioBeta(因为我在安装最新版本之前有 beta Android Studio)

不确定是哪一步解决了它,但我不再收到错误消息并且可以按预期运行应用程序。

【讨论】:

    【解决方案2】:

    不知何故,您的 jre 中正在加载一个损坏的库。您可以打印出正在为 bouncycastle 库加载的 jar,然后尝试删除或替换它。

    build.gradle 文件的开头添加以下 sn-p

    Class klass = org.bouncycastle.asn1.bc.BCObjectIdentifiers.class;
    URL location = klass.getResource('/'+klass.getName().replace('.', '/')+".class");
    println location.toURI().toString();
    

    【讨论】:

      【解决方案3】:

      我在 Kubuntu 也有这个。我将我的 Java 切换到 Oracle 版本 (1.8),清理了 Android Studio 和 Gradle 中的所有内容。我的新项目仍然没有工作,所以我尝试导入一个旧项目,处理新版本的插件,旧项目开始工作。我切换到新的,它抛出了这个错误并且......正在构建没有错误!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-05-08
        • 2016-12-31
        • 2016-03-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-10
        • 2018-09-08
        • 1970-01-01
        相关资源
        最近更新 更多