您的位置:首页 > 其它

ProGuard工具使用介绍

2018-03-12 22:43 162 查看
本文主要是自己在使用Proguard过程中遇到的一些问题的总结。此工具是目前用的比较广泛的,而且可以支持到JDK8。
在这里我主要是介绍实际操作过程中遇到的问题,基本用法网上很多我就不多说了。
一、ProGuard基本用法
     基本用法网上非常多,按照步骤来就行。我参考的帖子是:
     http://blog.csdn.net/zhangdaiscott/article/details/45368261
二、主要问题与解决
1、默认的混淆名称是a、b、c这样的简短字符,可以修改为自定义混淆名称



  官网上对类和属性、方法提供了两个属性:  -obfuscationdictionary 和-classobfuscationdictionary
Step1: 自定义个混淆字典,keywords.txt 和 mycfg3.pro放在同一目录下



Step2: mycfg3.pro中配置该属性,该事例中只配了-obfuscationdictionary



Step3: 将mycfg3.pro导入到 ProGuardgui 控制台,看到如下效果:



注意:如果直接这样进行混淆时会报“系统找不到指定路径”错误。问题就出现在这里了D:\0310\demo\keywords.txt。
 查阅源码后发现这个地方后台直接用 new URL(),所以要手动改成“file:///D:/0310/demo/keywords.txt”才能成功。

2、对JAVA泛型的支持,需要如下配置:



3、对Spring注解的支持,需要完成以下两步:
    Step1: 配置文件增加:



 Step2: 将混淆后的 demo.jar,解压后用jar命令重新打个jar
           这是我用的:jar cf demo.jar *
3、需要过滤掉告警命令:在mycfg.pro中添加以下命令
     -dontwarn org.springframework.**
    -keep class org.springframework.** {*;}
ProGuard官方提供的操作手册很好,一定要参考,在软件根目录下也有 proguard6.0\docs

以上是我遇到的一些问题,希望对大家有帮助。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: