如何在 android studio gradle 中降级 proguard 版本?

Posted

技术标签:

【中文标题】如何在 android studio gradle 中降级 proguard 版本?【英文标题】:how to downgrade proguard version in android studio gradle? 【发布时间】:2015-02-17 09:10:52 【问题描述】:

我正在尝试使用 scala 和 android studio 构建一个 android 应用程序。 编译在 proguard 处失败并出现异常:

Error:java.lang.ArrayIndexOutOfBoundsException: 4
    at proguard.classfile.editor.InterfaceDeleter.visitSignatureAttribute(InterfaceDeleter.java:162)
    at proguard.classfile.attribute.SignatureAttribute.accept(SignatureAttribute.java:97)

我在另一个地方 (http://sourceforge.net/p/proguard/bugs/549/) 发现这个问题是由 scala 中的一个错误引起的,但它只出现在 proguard 5.1 中,而不出现在 proguard 5.0 中。

现在我的问题是:如何设置 android studio 以便它使用 proguard 5.0?

【问题讨论】:

【参考方案1】:

找到了!

诀窍是在顶层构建文件中排除 proguard 5.1,并添加对 5.0 的依赖项。

这是我的***构建文件:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript 
    repositories 
        mavenCentral()
    
    dependencies 
        classpath ('com.android.tools.build:gradle:1.0.0') 
            exclude module: 'proguard-gradle'
        
        classpath "jp.leafytree.gradle:gradle-android-scala-plugin:1.3.1"
        classpath ('net.sf.proguard:proguard-gradle:5.0') 
            force = true
        

    


allprojects 
    repositories 
        jcenter()
    

【讨论】:

以上是关于如何在 android studio gradle 中降级 proguard 版本?的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio中如何清理gradle缓存

如何使用Android Studio开发Gradle插件

如何在android studio中查看当前使用的gradle版本和gradle插件版本

如何在android studio中查看当前使用的gradle版本和gradle插件版本

如何在android studio中查看当前使用的gradle版本和gradle插件版本

如何在android studio中查看当前使用的gradle版本和gradle插件版本