在Eclipse中debug时,查看类加载信息

在跑程序时,有些时候会发现NoSuchMethodException,出现这种情况很大情况都是包冲突导致的

为了查看程序在运行时加载了哪里包,我们可以在调试程序加一些启动参数

如: -verbose就可以查看所加载的类

设置过程如下:





运程程序之后就会有类似的东西出现

[Opened C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.Object from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.io.Serializable from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.Comparable from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.CharSequence from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.String from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.reflect.GenericDeclaration from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.reflect.Type from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.reflect.AnnotatedElement from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.Class from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.Cloneable from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.ClassLoader from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.System from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.Throwable from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.Error from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.ThreadDeath from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.Exception from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.RuntimeException from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.security.ProtectionDomain from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.security.AccessControlContext from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.ReflectiveOperationException from C:\Program Files\Java\jre7\lib\rt.jar]
[Loaded java.lang.ClassNotFoundException from C:\Program Files\Java\jre7\lib\rt.jar]


上面的信息就是说你加载的类是从哪个jar包里面来的

这样就可以确定你加载的包对还是不对

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章