Java Debugger运行应用程序而不会中断

我有无处不在的HelloWorldApp.java文件

/**
 * The HelloWorldApp class implements an application that
 * simply prints "Hello World!" to standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

我跑:

javac HelloWorldApp.java

然后我跑:

jdb HelloWorldApp

我明白了:

Initializing jdb ...
> 

我键入:

stop at HelloWorldApp.main:7

在哪里提示

然后我明白了

Deferring breakpoint HelloWorldApp.main:7.
It will be set after the class is loaded.
>

我键入:

run

在哪里提示

然后我明白了

Set uncaught java.lang.Throwable
Set deferred uncaught java.lang.Throwable
> 
VM Started: Hello World!

The application exited

我没有在最后一个提示上输入任何内容,它只是退出而没有破坏.我的问题是为什么输出那些Throwable行,为什么调试器没有在我给它的断点处停止?

解决方法:

我刚刚在JDB文档中检查了stop的语法

stop in <class-name>.<method-name>  Stop on entry to the given method.
stop at <class-name>:<line-number>  Stop at the given line.

我认为你命令停止应该是以下任何一种

stop in HelloWorldApp.main 
stop at HelloWorldApp:7

尝试看看它可以解决您的问题!

上一篇:java – JUnit TestWatcher:失败了,是否可以删除抛出的异常(操纵Throwable / stacktrace)?


下一篇:Java throw:异常的抛出