Java 杂谈Java程序员们的(家)

通过调试确定JVM是否从错误的位置装入了类

2018-10-31  本文已影响0人  传奇内服号

在实际开发中,我们经常会遇到由于ClassNotFoundException、NoClassDefFoundError、NoSuchMethodException等异常而导致应用等无法正常启动。一般都是由于包冲突等导致的。

这种情况下,我们可以用 -verbose 命令行选项打开JVM 的详细输出。当某些事件发生的时候(例如,类装入时),详细输出会在控制台上显示信息。要想得到额外的类装入信息,可以用详细类输出。可以用 -verbose:class 选项启动这个模式。

在Eclipse中,我们可以在Run Configuration对话框中做如下配置即可:

详细输出有助于解决类路径问题,例如没有打开 JAR 文件(因此不在类路径中)或从错误的位置装入了类。

知道类装入器在哪里寻找类、特定的类是由哪个类装入器装入的,通常很有用。

上一篇下一篇

猜你喜欢

热点阅读