Flume твиттер
Я пытаюсь выполнить flume, чтобы получить данные из потока Twitter, но получил эту ошибку при выполнении потока.
[ОШИБКА - org.apache.flume.lifecycle.LifecycleSupervisor$MonitorRunnable.run(LifecycleSupervisor.java:253)] Невозможно запустить EventDrivenSourceRunner: {источник:com.cloudera.flume.source.TwitterSource{имя:Twitter, состояние:IDLE} } - Исключение следует. java.lang.NoSuchMethodError: twitter4j.TwitterStream.addListener(Ltwitter4j/StreamListener;)V в com.cloudera.flume.source.TwitterSource.start(TwitterSource.java:140) в org.apache.flume.source.EventDrivenSource.EventDrivenS EventDrivenSourceRunner.java:44) в org.apache.flume.lifecycle.LifecycleSupervisor$MonitorRunnable.run(LifecycleSupervisor.java:251) в java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:47u) в java..concurrent. 293) в java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) в java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) в java.lang.Thjr.:745)
Я новичок в бегах и работаю в Cloudera QuickStart. При поиске решений было сказано, что нужно установить maven, а затем создать файл jar flume-snapshot, но я не знаю, как установить maven в быстром запуске Cloudera. Любая помощь о том, как исправить эту ошибку, пожалуйста, я застрял здесь на 1 неделю.
1 ответ
Нашел решение: Конфликт возникает из-за файлов twitter4j и файлов с мгновенными снимками. Поэтому я переименовал фляги twitter4j, изменив их расширение с помощью jarx. Читая эту статью, я сделал еще одну вещь: поместил снимок потока в следующую иерархию. /usr/lib/flume-ng/lib/plugins.d/flumesnapshot и следующий шаблон в каталоге var.