你的想法完全可行,就是文件io操作么。
你不会想decompile吧,那就难了

解决方案 »

  1.   

    编译的问题可能要用jni调用命令行。然后用classloader的问题
      

  2.   

    应该能做到!但是象DavidBone(7级宝宝)说的用decompile就比较难了,我还是比较同意xue_sharp(著名的反派角色) 的说法。我不明白你为什么一定要这样生成类?
      

  3.   

    java的输入/输出流有很多种,你和想法可以实现,编辑也可以用java代码实现。
    java代码写入我就不说了。
    编译:
     public void generateClass()
        {
            String  m_strPath = "";
                File  m_fConfRecordPath = null;
                m_strPath=System.getProperty("user.dir");
            try{
            Runtime.getRuntime().exec("D:\\j2sdk140\\bin\\javac "+m_strPath+"\\test.java");
            }
            catch(Exception e){}
        }
      

  4.   

    [1]如果只是想写个代码生成工具,给你两个方案
       [1.1] JBuilder OpenTools API
       [1.2] Velocity Macro Template
    [2]如果生成代码后还想编译,或者说想获得 class 文件.给你三个方案
       [2.1] 生成代码后用 javac 编译(此方案包括调用 sun 的编译包)
       [2.2] 利用 Apache BCEL 真接写二进制
       [2.3] 有一个汇编写 Java 的东东,生成汇编码后编译