对应tomcat启动java -jar agent.jar install tomcat 对应的配置在Catalina,bat里边
第一个参数表示
-Xbootclasspath/p:path 让jvm优先于默认的bootstrap去加载path中指定的class
第二个表示:字节码更改的jar
切记eclipse一定要用jre而不是jdk,jre是运行环境,jvm会对jre进行先后顺序的匹配,而不是jdk,
-----------------------------------引用----------------------------------------------
-Xbootclasspath:bootclasspath 让jvm从指定的路径中加载bootclass,用来替换jdk的rt.jar。一般不会用到。
-Xbootclasspath/a:path 被指定的文件追加到默认的bootstrap路径中。
-Xbootclasspath/p:path 让jvm优先于默认的bootstrap去加载path中指定的class
命令示例:D:\tmp>java -Xbootclasspath/p:D:\tmp\boottest.jar TestReplaceJdkSource
D:\tmp\boottest.jar中有自己改动后的jdk类,只包含改动后的.class,如:java.lang.Short.class
TestReplaceJdkSource.java用来显示测试结果,如显示值:System.out.println(System.getProperty("sun.boot.class.path"));
可以看到此值发生改变,boottest.jar添加到bootClassPath的最前面。
至于Eclipse中替换则更简单,新建一个JRE,再Edit -> Add External JARS... ,添加自己编写的boottest.jar到JRE system libraries,最后要记得把刚添加的jar包按顺序放在最前面,最后运行程序时把JRE给换成自己刚创建的。