基于Proguard软件基础上,针对Web项目xml配置文件修改的java项目。
来源:互联网 发布:国足球员数据 编辑:程序博客网 时间:2024/05/21 19:31
操作步骤
Proguard配置说明
1、下载Proguard软件:http://sourceforge.net/projects/proguard/files/,
此软件需要java运行环境支持,java环境配置可于网上了解。
2、运行Proguard文件夹下的proguardgui.jar打开配置界面,如下图,此界面主要用于可视化配置Proguard混淆设置;具体配置如下:
a.input/Output:add input 添加web项目导出的jar包(包含src和webRoot下文件);
add output:指定保存混淆后的jar名称。Library jars,aars…:为项目运行的java版本环境,根据需要修改,其他jar包基本无需add,如下图:
b.Shrink :为压缩设置,暂不做处理,所以去掉所有‘勾’。
c.Obfuscation:为混淆配置,也是我们需要操作的地方基本配置如下图:,其中printmapping:为混淆后的对照文件xx.map,是后面用来替换xml等文件的参照表。
d.Optimization:为优化配置,如下图:
d.Information:其他配置,如下图
e.Process:为运行界面,save configuration 保存配置为文件,view configuration 预览配置文件,process 开始运行混淆。此处点击save保存配置文件为 xx.pro如下图
f.修改e步保存的xx.pro文件,需要修改之处基本说明如下:
# keepclassmembers只保留指定的类成员名称和内容
# keepclassmembernames只保留成员名称,混淆内容
# keepclasseswithmembers只保留指定的类和类的成员名称和内容
# keepclasseswithmembernames只保留指定的类和类的成员名称和内容,混淆内容
# keepnames保留类和成员名称,混淆内容
# keep 保留类和成员名称
以BanKloudServer项目为例,添加一些配置内容,主要是bean、view、action、remote等涉及框架的属性名和方法名,具体如下所列,保存修改,至此,Proguard配置文件设置完成。-keepclassmembers,allowshrinkingclass *.sumecom.*.po.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.bean.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.view.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.shareview.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.action.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.remote.** {
public private protected <methods>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.global.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.core.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.common.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.server.ConstantsServer {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.interceptor.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.servlet.* {
public private protected <fields>;
public private protected <methods>;
}
-keepclassmembers,allowshrinkingclass *.sumecom.*.dao.* {
public private protected <fields>;
public private protected <methods>;
}
g.使用proguardgui.jar中Load configuration导入配置xx.pro,然后Process运行,即会生成混淆后的jar文件和一个映射文件xx.map。
Proguard的map映射文件说明
1、通过3.1操作,我们会得到混淆前后的class的包名、类名、属性、方法名的对照文件xx.map,如下图,
2、运行 混淆程序HunXiaoWebProject中的proguard(mapPath)方法。来实现对map文件的进一步处理,作用为还原bean、view等类名、混淆action、dao方法(因Proguard自动混淆出造成同一个类中方法名重复,造成dao.xm和action的配置错误,所以在此自行替换),其参数mapPath为 xx.map的全路径,运行完后,xx.map被修改。
3、将此时的xx.map放入Proguard软件里完成第二次对class的混淆,步骤为:3.1 g步,使用proguardgui.jar中Load configuration导入之前的xx.pro文件,
4、唯一需要修改的地方是勾选“Apply mapping”,填入刚生成的xx.map,然后运行process,至此Proguard软件完成使命。
运行HunXiaoWebProject(java)程序说明
1、解压生成的jar包,将a、com、xx.xml文件剪贴到WebRoot/WEB-INF文件夹下。
2、运行fire(dir)方法,参数dir为jar解压后文件夹。(文件放在xx.map所在文件目录下,并取与map文件的同名称);
3、将WebRoot文件夹给为需要的项目名,放入tomcat,启动运行。
源码:http://download.csdn.net/detail/t_y_c/8569297点击打开链接
- 基于Proguard软件基础上,针对Web项目xml配置文件修改的java项目。
- proguard混淆java web项目
- java web项目中达梦数据库的xml配置文件
- 用proguard混淆java web项目
- 使用proguard混淆java web项目代码
- 使用proguard混淆java web项目代码
- 访问项目配置文件web.xml
- Java web 项目 web.xml 配置文件加载过程
- 关于web项目web.xml配置文件路径的问题。
- java web项目中读取和修改properties配置文件
- java web项目的web.xml详解
- web项目修改xml文件
- 基于spring的web项目中一些配置文件的解释
- java 一个项目访问另一个Web项目的配置文件
- Java web项目框架配置文件
- 修改weblogic配置文件快速部署web项目
- 基于S2SH框架的项目—web.xml文件配置
- java web项目名称修改
- Android 登录界面连接PHP后台服务器
- 无限微博------第二天
- 批量删除的用法--易通
- POJ 3974 Palindrome Manacher
- PostgreSQL联结关键字 ON、USING、NATURAL
- 基于Proguard软件基础上,针对Web项目xml配置文件修改的java项目。
- Android加载数据ListView优化内存实现
- C++中的动态联编/静态联编及虚函数表
- VMware 锁定文件失败 开启模块 diskearly 的操作失败 未能启动虚拟机
- ubuntu 侧边栏消失不在了怎么办
- 8.1 最大报文段(MSS)选项
- java解惑65:疑似排序的惊人传奇
- 非递归线段树区间修改区间求和的两种实现(以POJ 3468为例)
- style="visibility: hidden"和 style=“display:none”区别