Java 调试器在不中断的情况下运行应用程序
Java Debugger runs application without breaking
我有无处不在的 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 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
试试看是否可以解决您的问题!
我有无处不在的 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 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
试试看是否可以解决您的问题!