У меня есть класс 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 не верит, что класс используется?