Как пропустить строку в отладке идеи Intellij?
Предположим, что у меня есть java-код (только как пример):
public void someMethod(){
int a = 3;
int b = 2; // <-- stay debug here
a = b + 2;
System.out.prinln(a);
}
Можно пропустить выполнение строки "int a = b + 2;" и перейти на "System.out.prinln(a);"
P.S. Я использую Intellij Idea 12.
Ответы
Ответ 1
Невозможно, чтобы отладчик не выполнял части кода.
Однако возможно выполнить дополнительный код и изменить значения для переменных, поэтому, если вам нужно исключить одну строку из выполнения во время отладки, вам придется изменить свой код, чтобы подготовиться к такой отладке.
public void someMethod() {
int a = 3;
int b = 2;
boolean shouldRun = true;
if (shouldRun) {
a = b + 2;
}
System.out.prinln(a);
}
Затем вы установили точку останова, которая изменит значение shouldRun без остановки выполнения. Это можно сделать так.
![enter image description here]()
Обратите внимание, что
- Приостановить не проверяется
- Вычисленное выражение журнала используется для изменения переменной при ударе точки останова
Ответ 2
Можно пропустить строки только в том случае, если вы используете hotswapping или добавили другие инструменты для перезагрузки кода - добавьте изменения кода/новый код во время выполнения. Hotswapping - это функции замены компонентов без выключения системы. Hotswapping также может ссылаться на возможность изменять текущий код программы без прерывания его выполнения.
Существуют различные горячие инструменты, такие как: JRebel (https://zeroturnaround.com/software/jrebel/) или HotSwapAgent (http://www.hotswapagent.org/)
Вам не нужно перестраивать все приложение для перезагрузки изменений кода, это огромная экономия времени. Вместо того, чтобы запускать полный процесс сборки, просто используйте компилятор, встроенный в вашу среду IDE, и агент/инструмент hotSwap перезагрузит код в JVM.
В этом случае это не будет фактически пропущен, но вы можете просто прокомментировать/изменить строки и перезагрузить их. Эти инструменты довольно удивительные!!!! Это значительно ускоряет процесс разработки/отладки
Ответ 3
Вы не можете просто пропустить "выполнение строки" при отладке. Вы можете нажать F8 для перехода.
Ответ 4
Невозможно пропустить ИСПОЛНЕНИЕ линий в IntelliJ и даже в Eclipse.
Единственное, что вы можете сделать, это сделать шаг вперед (F8), который будет отслеживаться по строкам без
входящий в любую функцию.
Еще одна вещь - "Выйти" (Shift + F8), которая будет сразу перейти к следующей точке отладки, выполнив между строк на этом единственном шаге.