【发布时间】:2016-02-18 03:13:05
【问题描述】:
在启用 ProGuard 的情况下编译我的 Android 应用程序时出现以下错误。
Warning: library class android.databinding.tool.util.SourceCodeEscapers$1
extends or implements program class com.google.common.escape.CharEscaper
Warning: library class android.databinding.tool.util.SourceCodeEscapers$JavaCharEscaper
extends or implements program class com.google.common.escape.ArrayBasedCharEscaper
Warning: library class android.databinding.tool.util.SourceCodeEscapers$JavaCharEscaperWithOctal
extends or implements program class com.google.common.escape.ArrayBasedCharEscaper
Warning: there were 3 instances of library classes depending on program classes.
You must avoid such dependencies, since the program classes will
be processed, while the library classes will remain unchanged.
(http://proguard.sourceforge.net/manual/troubleshooting.html#dependency)
这似乎是由 Android data binding 和 Guava 之间的冲突引起的。我的应用程序依赖于 Guava (com.google.guava:guava:18.0) 并启用了数据绑定。 appears 数据绑定对 Guava 有某种内部依赖,这导致 ProGuard 出现问题。
我正在运行最新的 gradle 测试版 (2.0.0-beta5),所以问题可能与此有关。
【问题讨论】:
-
我遇到了同样的问题!!!!与上面相同的日志输出并使用相同版本的 gradle。好郁闷
标签: android android-gradle-plugin proguard