我已经成功序列化了Ghost类:
class Ghost {}
File file = new File("serialized.class.bin");
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(file));
oos.writeObject(Ghost.class);
然后我试图在不同的应用程序中恢复它:
InputStream is = new FileInputStream(new File("serialized.class.bin"));
ObjectInputStream ois = new ObjectInputStream(is);
Object o = ois.readObject();
我收到错误,在(尝试)加载它时错过了类:
java.lang.ClassNotFoundException: Ghost
反序列化类时我可能无法访问Ghost.class
文件。是否可以以这种方式传输 Java 类?
升级版。我假设在序列化类时正在转储类定义(字节码)。我错了。不过,通过getResourceAsStream()可以达到目标。