IDE зависает в режиме отладки на точке останова в приложении java fx



У меня есть проблема при отладке в IntelliJ IDEA, он зависает в режиме отладки на точке останова в слушателях в приложении javafx. Я попытался увеличить пространство кучи, но это не помогло. Может быть, у кого-то тоже была такая проблема, пожалуйста, подскажите мне, что делать.

713   2  

2 ответов:

Задайте это в качестве параметра виртуальной машины:

-Dsun.awt.disablegrab=true

Это испортит перетаскивание и оставит артефакт на экране, пока отладчик будет приостановлен - но это позволит вам отлаживать. Это происходит всякий раз, когда вы блокируете поток JavaFX.

Это может произойти по простой причине: приложение имеет блокировку на рабочем столе, например модальный диалог или всплывающее окно или открытое меню. Затем он останавливается в точке останова. Это уведомляет IDE. Теперь IDE пытается что-то сделать на вашем рабочем столе, но не может, так как приложение все еще имеет блокировку на весь рабочий стол - > deadlock.

Вы можете использовать такой инструмент, какChronon , который записывает всю программу и позволяет вам перемещаться вперед и назад по временной шкале.

Последний вариант: ведение журнала или отладчик бедняги (System.out) вместо этого.

[EDIT]

Это трудно проверить с помощью системы.из которых 20 параметров не равны.

На самом деле это довольно просто:

System.out.println("check");
if(!a1.equals(b2)) System.out.println(a1+"!="+b1);

Затем продублируйте последнюю строку. Таким образом, вы получите результат только тогда, когда что-то действительно интересно (а не для 19 равных параметров). Добавьте некоторые паттерны к выходным данным, если вы не можете отличить aX от aY (т. е. true):

if(!a1.equals(b2)) System.out.println("a1:"+a1+"!="+b1);

Comments

    Ничего не найдено.