@Yasuro

Как посмотреть полный стек вызовов в idea?

Можно ли как-нибудь получить информацию о вызванных методах в intellij idea?
Если мы поставим бряку в каком-нибудь методе, то увдими в стектрейсе октуда она вызывается. А посмотреть какие методы были вообще вызваны по пути к бряке можно как-нибудь?
Скажем код такой:
public static void main(String[] args) {
бла
бла
бла
бла

        testMethod();

        System.out.println("тут установили бряку");
    }

    private static void testMethod(){
        System.out.println("i am from testmethod");
    }

и хочу увидеть в стектрейсе, что был вызван метод testMethod или не обязательно смотреть в рантайме, можно чтобы это куда-то логирвалось.
Знаю в visual studio есть стек вызовов, а в idea такое есть?

p.s зачем это надо? если большой проект и надо узнать, как работает код, что за чем вызывается. Что-то в коде написать нет возможности, проект большой и не мой)
  • Вопрос задан
  • 1547 просмотров
Пригласить эксперта
Ответы на вопрос 2
zagayevskiy
@zagayevskiy Куратор тега Java
Android developer at Yandex
Стек(именно стек) вызовов есть в окне Frames дебаггера. Но, конечно, оно не покажет все вызовы, которые были ДО брекпоинта. Покажет только те, которые выше в коллстеке. Если установить брекпоинт на "i am from testmethod" - покажет.
Ответ написан
Комментировать
@Narryel
Можно получить массив StackTraceElements и потом пройтись по ним foreach

StackTraceElement[] ste= Thread.currentThread().getStackTrace();
for (StackTraceElement element : ste)
{
System.out.println(element.getMethodName()); // тут можно выводить, что необходимо
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы