Невозможно отладить лямбда-выражение IntelliJ Ultimate 2018.1 - PullRequest
0 голосов
/ 19 июня 2019

Я запускаю тестовый пример Junit в режиме отладки, он отлично работает с обычными вызовами методов.Когда я пытаюсь отладить лямбда-выражение, управление не идет внутрь.

Я пытался установить Java Stream Debugger, но поддержка IntelliJ Ultimate 2018.1 IDE пока не расширена

public TestLambda lambdaExpression() {
        int width=10;
        TestLambda d2;
        //with lambda
        return d2=()->{
            System.out.println("Drawing "+width);
            System.out.println("Drawing1 "+width);
            System.out.println("Drawing2 "+width);
        };
    }

Я хочуточка отладчика для перехода к каждому оператору sysout.Я могу отлаживать то же выражение с помощью Eclipse.

1 Ответ

0 голосов
/ 19 июня 2019

Согласно комментарию я обновил код, и он работал нормально.Моя настоящая проблема была связана с инициализацией Bean через spring, поэтому в файле конфигурации не было выполнено ни одного выполнения.Следовательно, отладчик не шел внутрь.

Обновленный код:

public void lambdaExpression() {
        int width=10;
        //with lambda
        TestLambda d2=()->{
            System.out.println("Drawing "+width);
            System.out.println("Drawing "+width);
            System.out.println("Drawing "+width);
        };

        d2.draw();
    }
...