Proguard混淆了脂肪罐

时间:2009-10-19 22:37:13

标签: java proguard

我的应用程序jar包含来自swing-layout.jar的类,其中包含java 1.5的免费布局管理器。在混淆过程中,我收到很多警告,例如

[proguard] Note: org.jdesktop.layout.SwingLayoutStyle accesses a field 'INDE
NT' dynamically                                                             
 [proguard]       Maybe this is program field 'org.jdesktop.layout.LayoutStyl
e { int INDENT; }'   

我希望proguard单独离开org.jdesktop课程,并摆脱我尝试的警告

      -keeppackagenames org.jdesktop.*

但它不起作用?

2 个答案:

答案 0 :(得分:9)

老问题,但是

-keep org.jdesktop.**

这里没有使用proguard 4.6 - 需要添加:

-keep class org.jdesktop.**

以防有人像我一样绊倒这个问题。

答案 1 :(得分:2)

我想,你想,

-keep org.jdesktop.**

注意两颗星。来自documentation

*   matches any part of a name not containing the package separator or directory separator.
**  matches any part of a name, possibly containing any number of package separators or directory separators.

-keeppackagenames只保留...包名!你想要-keep,它可以保护包中的名字。