2015-04-08 3 views
-1

Я пытаюсь извлечь данные твиттера, используя лоток. но я получаю следующее сообщение об ошибкеОшибка конфигурации twitter twitter

15/04/08 23:16:36 ERROR node.PollingPropertiesFileConfigurationProvider: Unhandled error 
java.lang.NoSuchMethodError: twitter4j.conf.Configuration.isStallWarningsEnabled()Z 
at twitter4j.TwitterStreamImpl.<init>(TwitterStreamImpl.java:60) 
at twitter4j.TwitterStreamFactory.<clinit>(TwitterStreamFactory.java:40) 
at com.cloudera.flume.source.TwitterSource.<init>(TwitterSource.java:64) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
at java.lang.reflect.Constructor.newInstance(Constructor.java:408) 
at java.lang.Class.newInstance(Class.java:433) 
at org.apache.flume.source.DefaultSourceFactory.create(DefaultSourceFactory.java:42) 
at org.apache.flume.node.AbstractConfigurationProvider.loadSources(AbstractConfigurationProvider.java:327) 
at org.apache.flume.node.AbstractConfigurationProvider.getConfiguration(AbstractConfigurationProvider.java:102) 
at org.apache.flume.node.PollingPropertiesFileConfigurationProvider$FileWatcherRunnable.run(PollingPropertiesFileConfigurationProvider.java:140) 
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) 
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) 
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
at java.lang.Thread.run(Thread.java:745) 

Я использовал водотоки-источники-1,0-SNAPSHOT.jar от cloudera.The TwitterAgent работает с указанной выше ошибкой. Есть ли для этого какая-нибудь работа?

Заранее спасибо.

+0

Добавить больше контента на ваш вопрос. Что вы сделали, чтобы спровоцировать эту ошибку? – Peanut

ответ

0

Это, очевидно, ошибка зависимости. библиотека источников дыма ожидает версию Twitter4j, которой нет, следовательно, ошибка NoSuchMethod. Я бы предположил, что вы потянете правильные версии, которые будут

1.6.0-SNAPSHOT для источника twitter и 3.0.3 для twitter4j. Вам следует проконсультироваться с pom.xml flume, который содержит всю необходимую информацию о версии.

Следует отметить, что вы должны использовать самую последнюю версию, насколько это возможно, поскольку старые реализации не будут работать. Тем временем Twitter сломал свои старые API.

Надеюсь, это поможет.

+0

Где мы можем скачать 1.6.0-SNAPSHOT jar? – MChirukuri

+0

Вам нужно будет проверить источники потока для этого и построить с maven. –

0

Это проблема с полным именем класса в вашем файле Agent.conf. В старых версиях имя класса: com.cloudera.flume.source.TwitterSource В последней версии лотка TwitterSource уже отправлен и не нужно скачивать отдельно. Имя класса изменен на org.apache.flume.source.twitter.TwitterSource

Пожалуйста, внимательно изменить имя класса, defitely Он будет работать для вас