基于Proguard软件基础上,针对Web项目xml配置文件修改的java项目。
2015-04-07 08:34
886 查看
操作步骤
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点击打开链接
相关文章推荐
- java web项目中达梦数据库的xml配置文件
- weblogic下开发web项目时修改java文件不用重启的绿色方法,不用修改weblogic的配置文件、不用jar
- Java的Web项目中Web.xml配置文件元素详解
- JAVA WEB开发之基于xml配置文件的分页实现(一) 分页配置原理
- weblogic下开发web项目时修改java文件不用重启的绿色方法,不用修改weblogic的配置文件、不用jar
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题
- 三,基于Java配置、无web.xml文件方式配置Spring MVC
- Java:Struts 项目中web.xml文件配置
- 一个基于servlet 3.0的不使用web.xml配置文件的建议web项目demo
- 基于S2SH框架的项目—web.xml文件配置
- 非web java项目部署到linux总结(非打包成jar,配置文件可以随时修改)
- java非web应用修改 properties/xml配置文件后,无需重启应用即可生效---自动加载
- 在java程序项目中如何使用xml配置文件存储信息简述
- javaweb_web.xml文件_配置指南
- java配置文件web.xml中参数设置及含义
- javaWEB项目中使用XSLT解析生成的XML文件
- Struts 项目中web.xml文件配置
- Java学习笔记(2)----Web项目中解析XML文件
- 关于j2ee工程发布到was上后,部分更新,例修改web.xml配置文件不起作用的原因解析
- Java Web 项目中的配置文件路径