Dexguard 7.3.01 与 gradle 2.3.0 不兼容

Posted

技术标签:

【中文标题】Dexguard 7.3.01 与 gradle 2.3.0 不兼容【英文标题】:Dexguard 7.3.01 incompatible with gradle 2.3.0 【发布时间】:2017-08-30 06:19:49 【问题描述】:

我在一个使用 Dexguard 的项目中工作,但是当我尝试将 gradle 更新到版本 2.3.0 时,我在同步时收到以下错误消息:

错误:没有这样的属性:sdkHandler 类:com.android.build.gradle.AppPlugin

设置:

Dexguard 7.3.01 版

com.android.tools.build:gradle:2.3.0

gradle distribution3.3

Android Studio 2.3

P.S:在 gradle 2.2.0 上我没有这个问题。

谢谢。

【问题讨论】:

【参考方案1】:

Chris 将你的 AS 更新到 2.4 后尝试执行以下操作...

ProjectStructure->Project->将 Android 插件版本更改为 2.2.0。

另一个选择是如果你按照这个编辑你的项目的 build.gradle 文件(不是模块的 build.gradle 文件)并以这种方式更改以下语句:

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

您也可以在此处尝试通过 build.gradle 文件更改 Sdk 的路径:

android
    System.out.printf("ndkDirectory: %s                    \n", ndkDirectory);
 

希望它有效!

【讨论】:

但我需要将 gradle 更新为 com.android.tools.build:gradle:2.3.0,而不是没有 2.2.0。 对我来说也是个大问题。 Gradle 4.0 不支持 2.2.x 的 android 插件...

以上是关于Dexguard 7.3.01 与 gradle 2.3.0 不兼容的主要内容,如果未能解决你的问题,请参考以下文章

原因:org.gradle.api.internal.plugins.PluginApplicationException:无法应用插件 [id 'dexguard']

Dexguard 与 Android 开发中的其他插件冲突

Android/Java 混淆:R8 与(ProGuard 或 DexGuard)?

将 ProGuard / Dexguard 与多个 Android Studio 模块一起使用

dexguard 8.2.16 导致运行时崩溃

DexGuard 如何加密类?