如下:我执行
D:\DemoProject\test11\dist\test11>jad Main.class显示:
Parsing Main.class...The class file version is 49.0 (only 45.3 and 46.0 are supported)
JavaClassFileParseException: Class file version mismatch去年用Eclipse写的程序,用这个jad可以顺利的反编译
最近在用netbeans6写,发现这样的问题,不知道如何解决。jad是否有比1.57更高的版本了?谢谢!!!!

解决方案 »

  1.   

    我记得jad是随着java的版本走的,估计你用的不配套。
      

  2.   

    netbeans6 用的jdk和cmd下不一样,这样解释可以好理解些。
      

  3.   

    最新版本 Jad 1.5.8g 下载地址 http://www.kpdus.com/jad.html#download
      

  4.   

    JAD就是,很专业,要求使用者也得很专业。
      

  5.   

    要是有源代码在低版本下编译,还要JAD干吗?
      

  6.   

    Jad还有不能反编译的,怎么预防反编译,别说混淆器,还有其他方法吗?
      

  7.   

    混淆 -> class文件加密 -> 拿自己写的ClassLoader加载经加密的类 -> 自己的ClassLoader也要处理 -> 放弃用Java写ClassLoader -> 改用C写ClassLoader再用JNI包装 -> C写的dll还得加壳处理 -> 最终放弃,大度点,还是开源吧!
      

  8.   

    或者使用 CS 结构,将关键组建放到 S 上,C 只提供一个操作界面。
      

  9.   

    干脆 BS 结构算了,客户端都不用装了。 再给自己的物理服务器加 N 把锁。
      

  10.   

    不是啊
    我的java版本就是最高的.但可反编译啊
    // Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov.
    // Jad home page: http://www.geocities.com/kpdus/jad.html
    // Decompiler options: packimports(5) braces fieldsfirst noctor nonlb space lnc 
    // Source File Name:   Test.java
      

  11.   

    呵呵,是这样,最后就是jni包装再加壳.感觉相当bt了.