Proguard Obfuscation for JAR files
我知道如何混淆可执行的jar文件,因为它具有主类。但是我正在尝试创建我的API(已经完成),我只需要混淆代码即可。问题是,每当我尝试使用Proguard(一个著名的Java模糊处理器)对jar文件进行模糊处理时,都会给我关于与"保持"有关的错误。我正在从Proguard运行proguard-gui,并且在Eclipse中,我将项目导出为普通的jar文件(不是可执行文件),并且试图混淆该jar文件。另外,我的jar文件中也没有包含.classpath和.project文件。如果有人可以帮助/指导我在Proguard中混淆不可执行的jar文件,它将非常有用并受到赞赏。谢谢。
注意:我正在使用Proguard的GUI进行模糊处理,与命令行无关。
问题图片:
Cfr ProGuard手册>示例>典型库
GUI具有用于处理库的复选框。
在Proguard的配置文件中,您需要指定要保留的类,否则Proguard只会减少所有内容。
最常见的保持线如下所示:
1 | -keep my.applications.package.* |
或
1 | -keep my.applications.package.MainClass |
您可以在Proguard网页上找到配置文件的示例