Я пытаюсь решить проблему с JUnit. В исходном коде я установил точку останова в двух местах: 1) в строке, где инициализируется статический член, 2) в первой строке одного из тестовых примеров.
Отладчик останавливается в строке инициализации статического поля. Но на тестовом примере это не заканчивается. Независимо от того, где я установил точку останова в тестовом примере, отладчик на этом не останавливается. Я точно знаю, что тестовый пример выполнен, поскольку я вижу, что добавленные мной сообщения журнала появляются в журнале.
Любая помощь будет принята с благодарностью.
Я использую программу запуска Eclipse Galileo и JUnit4.
Ответы:
Это может быть связано с одной из ошибок в JDK 6 Update 14, как указано в примечаниях к выпуску JDK 6 update 15 .
Если проблема действительно возникает, вам следует перейти на более новую версию JDK (однако это не гарантия, поскольку были выпущены исправления для 6u16, 6u18 и 7b1 ). Лучше всего использовать флаг -XX: + UseParallelGC. Увеличение размера минимального и максимального размера кучи, чтобы задержать первый сборщик мусора, приносит временное облегчение.
Кстати, используйте этот отчет об ошибке в Eclipse, чтобы отслеживать, как обстоят дела у других.
источник
Исправить можно так же просто, как щелкнуть запустить / пропустить все точки останова. Работал у меня.
источник
Убедитесь, что в разделе «Выполнить»> «Конфигурации отладки» выбран параметр «Остановить в основном», если это применимо к вашей ситуации.
источник
Обычно, когда это случается со мной (редко, но случается), означает, что выполняемый код отличается от кода в редакторе. Время от времени для Eclipse будет происходить рассинхронизация встроенных классов и кода в редакторе. Когда это происходит, я получаю странное поведение отладчика (отладка пустых строк, пропуск строк кода и т. Д.).
Перезапуск Eclipse, очистка всех проектов и пересборка обычно все проясняет. У меня также были плагины Maven (более старые версии ... их уже давно не было), которые тоже имели тенденцию делать это.
В противном случае это может быть ошибка, может быть тот, который заявил Винет,
Надеюсь это поможет
источник
Вы могли случайно пропустить все точки останова на панели инструментов Eclipse. Чтобы исправить это, перейдите в Eclipse -> Run -> Skip All Breakpoints.
источник
Project -> Clean, похоже, работал у меня на JRE 8
источник
Чтобы отладчик работал удаленно, файлы java .class должны быть заполнены вместе с отладочной информацией. Если компилятору была передана опция « -g: none », тогда в файле класса не будет необходимой информации и, следовательно, отладчик не сможет сопоставить точки останова в исходном коде с этим классом удаленно. Между тем, если файлы jars / class были запутаны , они также не будут иметь никакой отладочной информации. Судя по вашим ответам, скорее всего, это не ваш случай, но эта информация может быть полезна другим, кто сталкивается с той же проблемой.
источник
В моем случае проблема заключалась в том, что у меня не было открытого представления отладки в перспективе отладки, поэтому:
1 - Убедитесь, что у вас открыта перспектива отладки:
2 - Убедитесь, что у вас открыт режим отладки:
источник
Удалите все точки останова и снова добавьте их.
источник
Для JDK7 выполните-> Конфигурации отладки, отметьте «Продолжать работу JUnit после тестового запуска при отладке».
источник
Такое случилось со мной однажды, когда я снял флажок «Выполнить> Построить автоматически» и забыл проверить его еще раз.
источник
Убедитесь, что вы указали пакет наверху. В моем отличном коде это останавливается на точках останова:
Это не останавливается на точках останова:
источник
Чтобы удалить точки останова :
источник
Также проверьте, работают ли точки останова на других строках, это может быть ошибка в отладчике. У меня была проблема с отладчиком Eclipse, когда установка точки останова на логическое присвоение, код которого находился на следующей строке, не работала. Я сообщил об этом здесь , но поместил ее в предыдущую или следующую строку.
источник
Если ничего не работает-
источник
Другая возможная проблема заключается в том, что порт отладчика может быть заблокирован межсетевым экраном. Например, я использовал mule anypoint studio (v 5.4.3). Порт отладчика по умолчанию - 6666. Когда поток выполняется, он не останавливается на точке останова. когда я сменил порт на другой (например, 8099), он работал нормально.
источник
Перейдите
Right click->Debug Configuration
и проверьте, не создано ли слишком много экземпляров отладки. Моя проблема была решена, когда я удалил несколько экземпляров отладки из конфигурации и только что начал отладку.источник
Если вы находитесь на Eclipse,
Щелкните правой кнопкой мыши папку проекта в «Проводнике пакетов».
Перейти к источнику -> Очистить и выбрать свой проект.
Это уберет весь беспорядок, и ваша точка останова теперь должна работать.
источник
У меня сработало создание нового рабочего пространства.
источник
В моем случае у меня было несколько проектов в одном рабочем пространстве. Файл java, который я пытался отладить, присутствовал в нескольких проектах с одним и тем же пакетом.
Другой проект мне не нужен, поэтому просто закройте несвязанные проекты (или удалите файл из несвязанного проекта).
источник
Еще один комментарий относительно ответа Винита Рейнольдса.
Я узнал, что я должен был установить
-XX:+UseParallelGC
вeclipse.ini
Я настраиваю аргументы виртуальной машины (vm) следующим образом
это решило проблему.
источник
Вот что у меня работает:
Мне пришлось указать адрес моего локального сервера в конфигурации PHP-сервера следующим образом:
Примечание : этот адрес я настраиваю в моем файле Apache .conf .
Примечание : единственной работающей точкой останова была «Прерывание на первой строке», после этого точки останова не работали.
Примечание : проверьте свойства xdebug в файле php.ini и удалите все, что, по вашему мнению, не требуется.
источник