Точка останова не попадает внутрь обратного вызова Kotlin в Intellij

В приведенном ниже коде я помещаю точку останова на строку, где он говорит println("yoyo") , но он не попадает. Это на IntelliJ IDEA 2016.2.5 Build # IC-162.2228.15, построенном 14 октября 2016 года. Как я могу это исправить?

 class XxxTest { @Test fun xxx(){ object : dummyInterface{ override fun bbb() { println("yoyo") } } } interface dummyInterface{ fun bbb() } } 

Ваша функция xxx использует Object Expression для создания объекта анонимного класса, наследующего от dummyInterface . Проблема в том, что вы не используете этот объект нигде, и вы не храните его ссылку, так что он просто создан и никогда не вызывается.

Чтобы отладка остановилась в точке останова, вы должны фактически вызвать метод.

 val obj = object : dummyInterface { override fun bbb() { println("yoyo") } } obj.bbb() 
Intereting Posts
Как бесконечно повторять последовательность в Котлине? Классы данных Kotlin содержат открытые функции Android View получает оригинал «Wrap Content» Размер моего представления Java не разрешает окончательные методы по умолчанию .. но делает Котлин? Цепочка Наблюдения, чтобы избежать нескольких подписок У Kotlin Android Extensions кешируются синтетические свойства или каждый раз, когда он вызывает findViewById ()? Документация Kotlin не поддерживает теги типа «<p>» Вызов метода класса по умолчанию arg в конструкторе Что именно создает Regex с помощью Regex.fromLiteral ()? Классы класса Kotlin, которые наследуют классы Java, также наследуются от Any? Могу ли я создать KType из reified T Переопределяющий val, определенный в интерфейсе, с использованием var с тем же именем, определенным в суперклассе Невозможно использовать все параметры конфигурации с настраиваемой конфигурацией в градиенте с помощью kotlin-dsl Невозможно подтвердить приостановленный блок, переданный для forEach Ошибка при использовании callBy для функции с параметрами по умолчанию в Котлине