Java 退出后保存Jcodemodel对象

Java 退出后保存Jcodemodel对象,java,code-generation,generated-code,sun-codemodel,jcodemodel,Java,Code Generation,Generated Code,Sun Codemodel,Jcodemodel,我对JCodeModel(SUN)有一个问题。我的程序每天都在运行,我想在当前运行之前创建的类中添加一些函数 JCodel模型支持这个吗?如果没有,是否可以选择将JCodemodel对象保存在外部文件中,加载以前的JCodemodel,然后添加新函数 谢谢。您可以使用将实例保存到文件,然后使用ObjectInputStream读取并安装它。只要控制系统并确保版本不会在一夜之间更改,这应该是安全的(尽管不寻常) 演示如何使用它: import java.io.*; public class Obj

我对JCodeModel(SUN)有一个问题。我的程序每天都在运行,我想在当前运行之前创建的类中添加一些函数

JCodel模型支持这个吗?如果没有,是否可以选择将JCodemodel对象保存在外部文件中,加载以前的JCodemodel,然后添加新函数


谢谢。

您可以使用将实例保存到文件,然后使用ObjectInputStream读取并安装它。只要控制系统并确保版本不会在一夜之间更改,这应该是安全的(尽管不寻常)

演示如何使用它:

import java.io.*;
public class ObjectOutputStreamDemo {
   public static void main(String[] args) {
     String s = "Hello world!";
     int i = 897648764;
     try {

       // create a new file with an ObjectOutputStream
       FileOutputStream out = new FileOutputStream("test.txt");
       ObjectOutputStream oout = new ObjectOutputStream(out);

       // write something in the file
       oout.writeObject(s);
       oout.writeObject(i);

       // close the stream
       oout.close();

       // create an ObjectInputStream for the file we created before
       ObjectInputStream ois =
             new ObjectInputStream(new FileInputStream("test.txt"));

       // read and print what we wrote before
       System.out.println("" + (String) ois.readObject());
       System.out.println("" + ois.readObject());

  } catch (Exception ex) {
     ex.printStackTrace();
  }
}
}

我得到一个异常:java.io.NotSerializableException:com.sun.codemodel.JCodeModel。。。。JCodeModel不可序列化。。。这很糟糕,那么这就行不通了。。。很抱歉您的程序是否正在生成您希望通过JCodeModel向其添加函数的原始类?您的程序最初是从什么生成的?IE:你的程序是否读入了一个模型或描述符来指导它如何生成代码?