修改rt.jar的限制

时间:2009-10-03 21:05:05

标签: java internals jvm-hotspot

在rt.jar中修改类时有什么限制。我意识到这通常特定于JRE的版本和供应商。例如,我发现Sun 1.6 VM中的Hotspot不喜欢向java.lang.Object添加字段,因为它有关于Object大小的硬编码假设。但是,如果我在rt.jar中修改了类的重要部分,我会在运行时为我的jar中明确的类获得虚假的ClassNotFoundErrors。我已经尝试修改rt.jar,并用各种-Xbootclasspath参数取代它。

我真的不知道在哪里查找关于此类文档的文档,例如,我在OpenJDK文档中找不到任何内容。

1 个答案:

答案 0 :(得分:1)

您是否考虑过使用字节码检测库来实现您的目标?您可以使用ASM + java.lang.instrument,因为JDK大于或等于5.0