【问题标题】:Why Proguard still work without proguard-base.jar in android studio为什么 Proguard 在没有 proguard-base.jar 的情况下仍然可以在 android studio 中工作
【发布时间】:2017-03-17 11:27:05
【问题描述】:

我的Android Studio version is 2.3,我在本地找到proguard version

directory: /Applications/Android Studio.app/Contents/gradle/m2repository/net/sf/proguard/proguard-base.
There are two version, 5.2.1 and 5.3.2
Now I delete 5.3.2 folder, but when I execute: "gradle build" command, the log message shows still use 5.3.2, like:
:app:generateReleaseAssets
:app:mergeReleaseAssets
:app:processReleaseJavaRes UP-TO-DATE
:app:transformResourcesWithMergeJavaResForRelease
:app:transformClassesAndResourcesWithProguardForRelease
ProGuard, version 5.3.2
Reading input...

不知道为什么?

【问题讨论】:

    标签: android gradle proguard


    【解决方案1】:

    您可能没有设置禁用 proguard 的选项(默认情况下显然已启用)。只需添加选项 defaultConfig closurr 或相关的 buildType 闭包下的“minifyEnabled false”。

    【讨论】:

      【解决方案2】:

      ProGuard 现在包含在 Android Gradle 插件中,删除 m2repository 中的二进制文件只会让 Gradle 在下一次构建时再次下载它。

      如果您想使用 5.2.1 构建,则必须将 Android 插件的版本降级回 2.2:

      classpath 'com.android.tools.build:gradle:2.2.3'
      

      因为根据其发行说明,2.3 版包含 ProGuard 5.3.2:

      适用于 Gradle 的 Android 插件,修订版 2.3.0(2017 年 2 月)
      ...
      插件现在使用 ProGuard 版本 5.3.2。

      来源:https://developer.android.com/studio/releases/gradle-plugin.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-03-08
        • 1970-01-01
        • 2012-03-27
        • 1970-01-01
        • 2015-02-14
        • 2023-03-26
        • 2021-07-12
        • 2013-07-11
        相关资源
        最近更新 更多