找到运行时所加载Java类来自具体的哪个包的办法

平时我们运行一个Java类的时候,我们可以加入一些命令行参数,如verbose
比如我们运行java -verbose SpecPoint 我们可以获取SpecPoint这个类运行的时候所加载的类的信息,如下图:

class_load_verbose

 

但是有些很多类你看到会显示它from shared objects file,如果你想进一步看清楚每一个类到底来自于哪一个jar包,可以采用下面的方法:
运行java -verbose -D -Xbootclasspath/a:"C:\ProgramFiles\Java\jre1.6.0_07\lib\ext"  SpecPoint ,你就会发现SpecPoint相关的所有类加载的时候都会标明来自哪个包了,

posted @ 2009-11-17 14:33  Chris Wang  阅读(1020)  评论(0编辑  收藏  举报