如何保护我们的源代码,实际上,应该有几种方法可以使用:1、使用代码混淆器 2、重载应用服务器的classloader
使用代码混淆器proguard进行代码混淆
1.首先下载proGuard.zip到本地: proguard4.5beta4.tar.zip解压开,
2.新建文本文档,修改文件名为XXX.pro,然后复制下面内容到.pro
-injars 'Y:\src.jar' #需要混淆的jar-outjars 'Y:\java\src.jar' #输出jar-libraryjars 'C:\java\jre6\lib\rt.jar' #必须的系统类库-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\activation-1.1.jar' #项目需要的jar-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ant.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\antlr-2.7.6.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\asm-attrs.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\asm.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\aspectjrt.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\aspectjweaver.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\axis-ant.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\axis.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\backport-util-concurrent.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\bsf-2.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\bsh-2.0b4.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\c3p0-0.9.1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\cfgatewayadapter.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\cglib-2.1.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ckeditor-java-core-3.5.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\CKFinder-2.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\CKFinderPlugin-FileEditor-2.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\CKFinderPlugin-ImageResize-2.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\cmpp3.0-java.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-attributes-api.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-attributes-compiler.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-beanutils-1.8.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-codec-1.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-collections-3.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-configuration-1.6.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-dbcp-1.2.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-discovery-0.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-fileupload-1.2.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-io-2.0.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-lang-2.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-logging-1.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-logging-api-1.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-pool.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-validator-1.3.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\concurrent.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\dom4j-1.6.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\dwr.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ehcache-1.5.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ejb3-persistence.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\fckeditor-java-core-2.4.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\freemarker-2.3.15.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\generic-hession-api-0109.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\gson-1.7.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hessian-4.0.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate-annotations.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate-commons-annotations.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate-entitymanager.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate-validator.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\im4java-1.3.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jackson-core-asl-1.3.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jackson-mapper-asl-1.3.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jakarta-oro-2.0.8.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\Java2Word.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\javassist-3.4.GA.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jaxrpc.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jboss-archive-browsing.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jdbc2_0-stdext.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jdom.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jetty-6.1.24.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jetty-plus-6.1.24.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jetty-util-6.1.24.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jsf-api.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jsf-impl.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\json-lib-2.3-jdk15.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\json_simple-1.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jstl-1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jstl-api-1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jstl-impl-1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jta.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jtds-1.2.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\junit.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\log4j-1.2.15.jar'-libraryjars 'Y:\kf\WebRoot\WEB-