用SSH整合开发的web项目如何对java代码进行混淆

时间:2021-07-19 17:29:06
    我在网上搜了很多,最好的还是proguard这个软件,但是试了好多次,结果都是弹出output jar is empty,哪位有使用经验的告诉我一下proguard是如何配置的,可以对一个简单的java程序进行混淆的步骤,我弄了很久都没搞定

7 个解决方案

#1


你看下面的可以吗

-injars 'D:\\proguard4.3\\lib\\watchsafe_net2.0.war' 
-outjars 'D:\\Program Files\\Apache Software Foundation\\Tomcat 5.5\\webapps\\watchsafe_net2.0' 

-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\activation.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\antlr-2.7.6rc1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\antlr.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\asm-attrs.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\asm.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\bcprov-jdk15-142.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\cglib-2.1.3.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\charsets.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-beanutils.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-collections-2.1.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-digester.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-fileupload.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-logging-1.0.4.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-logging.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-validator.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\dnsns.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\dom4j-1.6.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\ehcache-1.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\hibernate3.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jaas.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jakarta-oro.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\javax.servlet.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\javax.servlet.jsp.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jaxen-1.1-beta-7.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-j2ee.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-jaxrpc.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-jsr77.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-saaj.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jce.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jdbc2_0-stdext.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jsse.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jta.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\localedata.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\log4j-1.2.11.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\mail.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\msbase.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\mssqlserver.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\msutil.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\namespace.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\proxool-0.9.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\proxool-cglib.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\rt.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\struts.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\sunjce_provider.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\sunpkcs11.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\xerces-2.6.2.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\xml-apis.jar' 

-dontshrink 
-dontoptimize 
-overloadaggressively 
-dontusemixedcaseclassnames 


-keepclasseswithmembers,allowshrinking public class com.watchdata.watchsafe_net.action.*  

-keep,allowshrinking public class com.watchdata.watchsafe_net.db.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.actionform.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.business.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.util.* 

#2


引用 1 楼 xiaozejun 的回复:
你看下面的可以吗
XML code
-injars 'D:\\proguard4.3\\lib\\watchsafe_net2.0.war' 
-outjars 'D:\\Program Files\\Apache Software Foundation\\Tomcat 5.5\\webapps\\watchsafe_net2.0' 

-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\activation.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\antlr-2.7.6rc1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\antlr.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\asm-attrs.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\asm.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\bcprov-jdk15-142.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\cglib-2.1.3.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\charsets.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-beanutils.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-collections-2.1.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-digester.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-fileupload.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-logging-1.0.4.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-logging.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-validator.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\dnsns.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\dom4j-1.6.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\ehcache-1.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\hibernate3.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jaas.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jakarta-oro.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\javax.servlet.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\javax.servlet.jsp.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jaxen-1.1-beta-7.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-j2ee.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-jaxrpc.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-jsr77.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-saaj.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jce.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jdbc2_0-stdext.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jsse.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jta.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\localedata.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\log4j-1.2.11.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\mail.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\msbase.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\mssqlserver.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\msutil.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\namespace.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\proxool-0.9.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\proxool-cglib.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\rt.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\struts.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\sunjce_provider.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\sunpkcs11.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\xerces-2.6.2.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\xml-apis.jar' 

-dontshrink 
-dontoptimize 
-overloadaggressively 
-dontusemixedcaseclassnames 


-keepclasseswithmembers,allowshrinking public class com.watchdata.watchsafe_net.action.*  

-keep,allowshrinking public class com.watchdata.watchsafe_net.db.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.actionform.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.business.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.util.*


这个混淆后能跑起来吗

#3


顶顶。
学习中

#4


又不是什么宝典,JS混淆还说得过去,JAVA的比较少了.

#5


引用 4 楼 archko 的回复:
又不是什么宝典,JS混淆还说得过去,JAVA的比较少了.


防止class文件被反编译,难道公司不考虑商业利益

#6


顶一个....我目前也在研究这个...

#7


我也在为这个头痛,弄出来告诉我一声。谢谢

#1


你看下面的可以吗

-injars 'D:\\proguard4.3\\lib\\watchsafe_net2.0.war' 
-outjars 'D:\\Program Files\\Apache Software Foundation\\Tomcat 5.5\\webapps\\watchsafe_net2.0' 

-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\activation.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\antlr-2.7.6rc1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\antlr.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\asm-attrs.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\asm.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\bcprov-jdk15-142.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\cglib-2.1.3.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\charsets.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-beanutils.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-collections-2.1.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-digester.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-fileupload.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-logging-1.0.4.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-logging.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-validator.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\dnsns.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\dom4j-1.6.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\ehcache-1.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\hibernate3.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jaas.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jakarta-oro.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\javax.servlet.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\javax.servlet.jsp.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jaxen-1.1-beta-7.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-j2ee.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-jaxrpc.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-jsr77.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-saaj.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jce.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jdbc2_0-stdext.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jsse.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jta.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\localedata.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\log4j-1.2.11.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\mail.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\msbase.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\mssqlserver.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\msutil.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\namespace.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\proxool-0.9.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\proxool-cglib.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\rt.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\struts.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\sunjce_provider.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\sunpkcs11.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\xerces-2.6.2.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\xml-apis.jar' 

-dontshrink 
-dontoptimize 
-overloadaggressively 
-dontusemixedcaseclassnames 


-keepclasseswithmembers,allowshrinking public class com.watchdata.watchsafe_net.action.*  

-keep,allowshrinking public class com.watchdata.watchsafe_net.db.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.actionform.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.business.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.util.* 

#2


引用 1 楼 xiaozejun 的回复:
你看下面的可以吗
XML code
-injars 'D:\\proguard4.3\\lib\\watchsafe_net2.0.war' 
-outjars 'D:\\Program Files\\Apache Software Foundation\\Tomcat 5.5\\webapps\\watchsafe_net2.0' 

-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\activation.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\antlr-2.7.6rc1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\antlr.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\asm-attrs.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\asm.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\bcprov-jdk15-142.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\cglib-2.1.3.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\charsets.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-beanutils.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-collections-2.1.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-digester.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-fileupload.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-logging-1.0.4.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-logging.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\commons-validator.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\dnsns.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\dom4j-1.6.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\ehcache-1.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\hibernate3.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jaas.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jakarta-oro.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\javax.servlet.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\javax.servlet.jsp.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jaxen-1.1-beta-7.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-j2ee.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-jaxrpc.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-jsr77.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jboss-saaj.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jce.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jdbc2_0-stdext.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jsse.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\jta.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\localedata.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\log4j-1.2.11.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\mail.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\msbase.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\mssqlserver.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\msutil.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\namespace.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\proxool-0.9.1.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\proxool-cglib.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\rt.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\struts.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\sunjce_provider.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\sunpkcs11.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\xerces-2.6.2.jar' 
-libraryjars 'C:\\Documents and Settings\\JAVA\\lib\\xml-apis.jar' 

-dontshrink 
-dontoptimize 
-overloadaggressively 
-dontusemixedcaseclassnames 


-keepclasseswithmembers,allowshrinking public class com.watchdata.watchsafe_net.action.*  

-keep,allowshrinking public class com.watchdata.watchsafe_net.db.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.actionform.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.business.* 

-keep,allowshrinking public class com.watchdata.watchsafe_net.util.*


这个混淆后能跑起来吗

#3


顶顶。
学习中

#4


又不是什么宝典,JS混淆还说得过去,JAVA的比较少了.

#5


引用 4 楼 archko 的回复:
又不是什么宝典,JS混淆还说得过去,JAVA的比较少了.


防止class文件被反编译,难道公司不考虑商业利益

#6


顶一个....我目前也在研究这个...

#7


我也在为这个头痛,弄出来告诉我一声。谢谢