Можно ли настроить IntelliJ для достижения точки останова в классе Java, который загружается во время выполнения посредством отражения? - PullRequest
3 голосов
/ 25 апреля 2019

У меня есть класс Java, который загружается во время выполнения посредством отражения для приложения Kafka Streams, настроенный для передачи имени класса в виде String, например:

streamsConfig.put(StreamsConfig.DEFAULT_TIMESTAMP_EXTRACTOR_CLASS_CONFIG,
    "com.company.data.kstreams.Processor.MediaTimestampExtractor");

Затем во время выполнения я проверил, что он правильно загружает и запускает указанный класс. Итак, эта часть работает нормально.

Однако, когда я помещаю точку останова в IntelliJ внутри этого пользовательского класса MediaTimestampExtractor, отладчик никогда не достигает его. В выводе я вижу, что он выполняет код в классе, но по какой-то причине IntelliJ не «знает», что класс выполняется. Фактически, сам класс показывает предупреждение:

Class 'MediaTimestampExtractor' is never used

Есть ли в IntelliJ возможность включить попадание точек останова в код, динамически загружаемый отражением, или способ настроить точку останова таким образом, чтобы она достигала, даже если IntelliJ не верит, что класс используется?

...