Java混淆编译器:Jocky原来的代码:public class SimpleBean implements Serializable {  private String name = "myname";
 
  private List myList = null;
  
  public void SimpleBean() {
    myList = new ArrayList(10);
  }  public void foo1() {
    myList.add("name");
  }
  
  private void foo2() {    
  }
  
  private void writeObject(java.io.ObjectOutputStream out)
      throws IOException {
    
  }} 
使用Jocky混淆工具后的代码:public class SimpleBean implements Serializable {  private String _$2;  private List _$1;  public SimpleBean()     {
        _$2 = "myname";
        this;
        JVM INSTR new #4   <Class ArrayList>;
        JVM INSTR dup ;
        JVM INSTR swap ;
        10;
        ArrayList();
        _$1;
    }  
  public void foo1() {
    _$1.add("name");
  }  private void _$1() {
  }  private void writeObject(ObjectOutputStream objectoutputstream){
      throws IOException {
  }

但是正如LS说的,没有涉及到什么核心的东西,没有必要代码保护。

解决方案 »

  1.   

    Jocky提供了Eclipse的插件,从而能够直接在Eclipse中使用Jocky。
      

  2.   

    Java, Tomcat, Eclipse, JBoss, Spring, Hibernate 的开发人员所要研究的东西肯定要比你多得多了,
    这么多优秀的软件都给你免费使用了,免费查看源代码了,何况你做的东西还是收费的!
      

  3.   

    java的class最多也就用点混淆器
    用处也不是很大,真想拿代码一样拿得到,只是反编译出来的代码比较难看懂而已
    这种也只是防君子不防小人
    真有这个要求的,还不如直接写进合同,明明白白的条款在那里,出了问题就告他不就完了
      

  4.   


    要是javaBean能正确混淆吗?求解
      

  5.   


    Action + JSP + EL/JSTL能正确混淆吗
      

  6.   

    直接把编译后的classes,页面及配置文件给他就行吧。放在服务器下可以运行就行,如果他不给你要源码的话,要的话,再考虑用Java混淆编译器:Jocky
      

  7.   

    混淆器的作用还是比较有限的,如果不需要提交代码的话,你可以考虑将重要的class加密,然后定制ClassLoader来读取这些class文件
    不过还是防君子不防小人的手段,通过JVMTI就可以很轻松获得解密后的class内容
      

  8.   

    代码混淆器,或者自己打包成JAR