一直认为tomcat5的类加载器的toString方法很酷,为什么呢?因为它的toString方法列出了所有的父类加载器以及类加载器加载的资源(即classpath).可能有些朋友还没有注意过,如果想看看它到底有多酷的话可以随便找个jsp
WEB-INF\classes\com\syj\Test
启动tomcat访问jsp,看看控制台:
非常清晰的调试信息,classpath一目了然,在一些复杂的类加载场景非常有用,
反编译tomcat5\server\lib\catalina.jar\WebappClassLoader.class 类查看源码
so easy,于是就想写个Util类,搞个 public static String toString(ClassLoader classLoader) 方法,说干就干,不过repositories这个属性是tomcat自己搞的,在sun提供的类加载器中,哪个属性存储了classpath呢?我可没兴趣翻阅tomcat类加载过程的源码,于是在debug下,内存里面找了一通,发现原来是存储在URLClassLoader的阅读全文>
发表于 @ 2008年09月20日 17:08:00|评论(loading...)|举报|收藏