Repost from [email protected]Как скомпилировать тестовый оператор Kafka 0.9 с Apache Apex?
Я хотел бы запустить единичный тестовый код с использованием нового оператора Kafka, который поддерживает протокол версии 0.9.
В этом процессе я включил библиотечную версию Malhar-Kafka (3.3.1-инкубация) и использую Apex-engine (версия 3.3.0) с помощью теста/предоставленного.
Компиляция отлично работает, но мои модульные тесты не работают должным образом с исключением «java.lang.ClassNotFoundException: com.datatorrent.lib.util.KryoCloneUtils».
Каков рекомендуемый способ запуска единичного теста, в котором используется оператор Kafka 0.9, интегрированный с двигателем Apex? Я предполагаю, что библиотека Malhar-вно Кафка оператор не соответствует 0,9 ..
Блок кода тест выглядит так:
Класс CassandraEventDetailsStreamingApp расширяет AbstractKafkaInputOperator в приведенном ниже фрагменте кода.
Исключение возникает в методе lma.getController();
@Test
public void testApplication() throws IOException, Exception {
try {
LocalMode lma = LocalMode.newInstance();
Configuration conf = new Configuration(false);
conf.addResource(this.getClass().getResourceAsStream("/dag-test-props.xml"));
lma.prepareDAG(new CassandraEventDetailsStreamingApp(), conf);
LocalMode.Controller lc = lma.getController();
lc.run();
} catch (ConstraintViolationException e) {
Assert.fail("constraint violations: " + e.getConstraintViolations());
}
}