【问题标题】:proguard + maven + android Error: Method must be overridden in [proguard.optimize.peephole.ClassMerger] if ever calledproguard + maven + android 错误:如果曾经调用,则必须在 [proguard.optimize.peephole.ClassMerger] 中覆盖方法
【发布时间】:2014-07-08 17:48:12
【问题描述】:

我在通过 maven 运行 proguard 时收到如下错误消息。我不明白的是它可以与 ANT 一起使用而没有任何问题。在额外的 Maven 中,可以在实际崩溃之前输出 2 个名为 seed.txt 和 usage.txt 的文件,然后由于某些我不知道的原因而失败。

我在互联网上搜索了错误(“方法必须在 [proguard.optimize.peephole.ClassMerger] 中被覆盖”)并尝试应用建议,但没有解决问题。有人可以给我任何建议吗?我真的被困在这一点上。

utjars, 'D:\Projects\MavenInHerd\Android\SOP\trunk\target\proguard-obfuscated.ja
r', -dump, 'D:\Projects\MavenInHerd\Android\SOP\trunk\target\proguard\dump.txt',
 -printseeds, 'D:\Projects\MavenInHerd\Android\SOP\trunk\target\proguard\seeds.t
xt', -printusage, 'D:\Projects\MavenInHerd\Android\SOP\trunk\target\proguard\usa
ge.txt', -printmapping, 'D:\Projects\MavenInHerd\Android\SOP\trunk\target\progua
rd\mapping.txt']
[INFO] Note: there were 185 duplicate class definitions.
[INFO]       You should check if you need to specify additional program jars.
[INFO] Error: Method must be overridden in [proguard.optimize.peephole.ClassMerg
er] if ever called
[INFO] ------------------------------------------------------------------------

【问题讨论】:

    标签: android maven proguard


    【解决方案1】:

    问题解决了。在开始解释我是如何解决这个问题之前,我要提一下它是如何与 ANT 一起工作而没有问题,但不是通过 maven。它与 ANT 一起运行,因为 ANT 正在寻找 project.properties 文件,其配置如下所示

    # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
    proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
    

    上面,我的 proguard.txt 正在与基本的 proguard-android.txt 合并。最终,ant 只寻找 1 个内容。

    但是 maven 对 project.properties 一无所知,这是问题所在。 解决方案是合并这两个文件(我的 proguard-project.txt 和 ${sdk.dir}/tools/proguard /proguard-android.txt) 手动。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-28
      • 1970-01-01
      • 1970-01-01
      • 2021-11-26
      • 1970-01-01
      相关资源
      最近更新 更多