是什么原因导致Proguard中出现此错误:“如果调用过,则必须在[proguard.optimize.peephole.ClassMerger]中重写方法"? [英] What causes this error in Proguard: "Method must be overridden in [proguard.optimize.peephole.ClassMerger] if ever called"?
问题描述
我正在通过Maven插件运行Proguard,您可以在此处查看我的配置: https://github.com/sanity/tahrir/blob/proguard-debug/pom.xml#L61
I am running Proguard via the Maven Plugin, you can see my configuration here: https://github.com/sanity/tahrir/blob/proguard-debug/pom.xml#L61
您可以在此处看到"mvn -DskipTests assembly:assembly"的完整输出: https://gist.github .com/ee1081179496e11916cb
You can see the complete output of "mvn -DskipTests assembly:assembly" here: https://gist.github.com/ee1081179496e11916cb
尽管进行了大量搜索,但我找不到导致此错误的原因的任何解释,现在也无法解决此问题?
Despite quite a bit of searching I cannot find any explanation of what causes this error, nor now I can fix it?
推荐答案
您的输入包含依赖于程序类的库类. ProGuard会发出警告,并且不允许这样做,除非您指定-dontwarn
.您应该删除该选项,并查看ProGuard的警告以获取详细信息.
Your input contains a library class that depends on a program class. ProGuard warns about it and doesn't allow it, unless you specify -dontwarn
. You should remove that option and check ProGuard's warnings for details.
请参阅ProGuard手册> 简介
See the ProGuard manual > Introduction
请参阅ProGuard手册>故障排除> 警告:库类...取决于程序类...
See the ProGuard manual > Troubleshooting > Warning: library class ... depends on program class ...
这篇关于是什么原因导致Proguard中出现此错误:“如果调用过,则必须在[proguard.optimize.peephole.ClassMerger]中重写方法"?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!