当前位置: 首页 > 工具软件 > yGuard > 使用案例 >

java 混淆war,java yguard混淆web工程

李良策
2023-12-01

用yguard来混淆java web工程,只需要一个ant脚本,用maven也可以,不过没试过。

下面的例子会混淆自己开发的jar包,所有开发的class都打成jar包放到WEB-INF/lib/了,这是因为yguard只能混淆jar包,WEB-INF/classes/下放的是一些配置文件。混淆后配置文件中的类名也会一起改(可以配置不改),用的是ant1.9,maven3.0.5,注:所有文件均utf8编码,混淆后配置文件中的汉字有可能出现乱码。。最好不用中文,大致流程是jar1:用来把java代码和配置文件打包到一起,yguard:混淆jar1的包,unjar:解压混淆后的文件,jar2:重新打包,只打包java

class文件,war:最后组装到一起。

build.xml:

encoding="UTF-8"?>

basedir=".">

value="ERPRF-WEB2.0"/>

value="./WebContent"/>

value="./WebContent/WEB-INF"/>

value="./service_src"/>

value="./ui_src"/>

value="./config"/>

value="${WEB-INF}/config"/>

value="./build_classes"/>

value="./build_webxml"/>

value="./build_webinf_config"/>

value="./build_config"/>

value="./build_webinf_classes"/>

value="./build_unjar"/>

value="./dist"/>

value="${distDir}/${project_name}-1.jar"/>

value="${distDir}/${project_name}_obf.jar"/>

value="${distDir}/${project_name}-2.jar"/>

value="${distDir}/${project_name}.war"/>

value="${project_name}_renamelog.xml"/>

value="${project_name}_shrinklog.xml"/>

/>

includeEmptyDirs="true" />

includeEmptyDirs="true" />

includeEmptyDirs="true" />

includeEmptyDirs="true" />

includeEmptyDirs="true" />

/>

/>

>

/>

/>

/>

/>

/>

id="project.classpath">

dir="./WebContent/WEB-INF/lib">

destdir="${build_class_dir}" encoding="UTF-8" source="1.7"

target="1.7">

refid="project.classpath"/>

value="-XDignore.symbol.file"/>

/> 

/> 

depends="compile">

dir="${build_class_dir}">

dir="${src_config_dir}">

dir="${src_webinf_config_dir}">

id="yguard.jar" path="${basedir}/yguard.jar"/>

depends="jar1" >

classname="com.yworks.yguard.YGuardTask">

refid="yguard.jar"/>

out="${obfjar}"/>

name="**struts-*.xml"/>

name="demostruts-*.xml"/>

depends="unjar">

depends="jar2"> 

/>

webxml="${build_webxml_dir}/web.xml"> 

name="WEB-INF/lib/**"/>

name="WEB-INF/classes/**"/>

name="WEB-INF/config/**"/>

/>

/>

 
 类似资料: