Как мога да накарам програмата за отстраняване на грешки на IntelliJ да позволи да се изпълняват куките за изключване на приложението ми?

При отстраняване на грешки в IntelliJ приложение, което регистрира куки за изключване, куките за изключване не се извикват, ако щракна върху зеления бутон с кръгла стрелка „рестартиране“, нито ако щракна върху червения квадратен бутон „стоп“. И в двата случая изглежда, че приложението под отстраняване на грешки е незабавно принудително прекратено.

(Имайте предвид, че това не е дубликат на Как да спра обработка, изпълнявана в intelliJ, така че да извиква куките за изключване?)

Когато „ръчно“ изпратя на процеса на дебъгер INT сигнал от терминала на Mac, разбира се, тогава моите куки за изключване се изпълняват според очакванията. Но не успях да открия никакви настройки за конфигурация или контроли в IDE, които да провокират желаното поведение.


person Tommy Knowlton    schedule 09.07.2014    source източник


Отговори (1)


Моля, разгледайте съответния проблем в програмата за проследяване на грешки на JetBrains.

Току-що тествах това на Idea 14.0.2 - бутонът за спиране работи елегантно, така че куките за изключване се изпълняват.

За съжаление, не можете да използвате точки на прекъсване в тялото на вашата кука за изключване, когато използвате бутона Стоп: тези точки на прекъсване се игнорират тихо.

Ако трябва да отстраните грешки в кода на куката си за изключване (т.е. да спрете на точки на прекъсване), можете елегантно да изключите приложението си, работещо в IDEA за отстраняване на грешки, като извикате команда от терминала:

kill -INT <pid>

където pid е идентификаторът на процеса на вашето приложение и може да бъде намерен, например чрез следната команда:

ps ax | grep java | grep <MainClassNameYouRun>

В този случай IDEA ще спре на точки на прекъсване в кука за изключване.

person Daniil Penkin    schedule 19.12.2014
comment
За съжаление, не можете да използвате точки на прекъсване в тялото на вашата кука за изключване. За това дойдох тук. Благодаря. - person muttonUp; 10.09.2015