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 и почему отладчик не остановился на той точке останова, которую я ему дал?

1 ответ

Решение

Я только что проверил синтаксис для остановки в документации 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

Попробуйте посмотреть, что решит вашу проблему!

Другие вопросы по тегам