内:Is there a way to obtain the bytecode for a class at runtime?的Java:在运行时获得类字节码从与同一JVM
我加入耐久性的Clojure,我终于在这里,我准备添加的功能点。在Clojure中,函数使用invoke方法(等等)将字节编译为类。这样,功能就是一流的。为了使这些持久化,我需要序列化和反序列化这些类。如何在不访问.class文件的情况下获取该类的字节码?
如果我错了,请纠正我的错误,但使用代理需要产生一个单独的虚拟机并且代理连接到第一个虚拟机。我需要从同一个虚拟机来完成。
仅使用Serializable来设置和获取Class对象是不够的。在反序列化之后,我需要加载这个类,并且在后续的VM实例中,可能会出现类名冲突。我需要修改字节码来将类重命名为反序列化/类加载时唯一的东西。
我绝不是这个话题的专家,但它可能是值得尝试坚持函数*定义*而不是底层字节码。你可以重新将函数重新编译为字节码。 – mikera 2010-11-09 20:27:32