为什么ProGuard输出的JAR文件中没有类文件?

问题描述 投票:1回答:1

我正在尝试使用ProGuard混淆我的JAR文件。

特别是...我有一个Java / Spring网络应用程序。因此,我生成了一个WAR文件。

我已将所有类从WAR文件的/ WEB-INF / classes文件夹复制到新的JAR文件中。

我启动了ProGuard GUI,并选择了我的JAR文件作为输入。我指定了一个新的output.JAR文件。然后我将所有/WEB-INF/lib/*.jar文件添加为“库jars”。

我接受ProGuard GUI中的所有默认设置,并且单击“处理!”。在最后一页上,它进行了处理……有一个“库类的重复定义”注释列表(我敢肯定我可以忽略它)。

然后生成输出JAR。但是输出JAR中仅包含三个类文件...其中的文件是我编写的用于进行简单代码测试的简单小测试类,并且不以任何方式接触应用程序的其余部分。

我的Web应用程序的所有类文件都不在输出JAR文件中。

我想念什么?

java proguard war obfuscation
1个回答
0
投票

ProGuard希望输入类的文件名与其完全限定的类名相对应,并且没有任何前缀,例如“ WEB-INF / classes”。您可能会在日志中看到很多关于它的警告。您可以通过将类放在“ WEB-INF / lib”中的jar中来解决此问题。

请参阅ProGuard手册>故障排除> Warning: class file ... unexpectedly contains class ...

© www.soinside.com 2019 - 2024. All rights reserved.