2013-04-24 69 views
0

我正在按照教程http://www.javacodegeeks.com/2012/03/twitter4j-and-esper-tracking-user.html。但是,當我試圖編譯它給了我follwoing錯誤的項目:Twitter4j和Esper:在主java.lang.NoClassDefFoundError拋出錯誤

Exception in thread "main" java.lang.NoClassDefFoundError: org/antlr/runtime/RecognizerSharedState 
    at com.espertech.esper.epl.generated.EsperEPL2GrammarLexer.<init>(EsperEPL2GrammarLexer.java:326) 
    at com.espertech.esper.epl.parse.ParseHelper.parse(ParseHelper.java:99) 
    at com.espertech.esper.core.EPAdministratorImpl.compileEPL(EPAdministratorImpl.java:299) 
    at com.espertech.esper.core.EPAdministratorImpl.createEPLStmt(EPAdministratorImpl.java:142) 
    at com.espertech.esper.core.EPAdministratorImpl.createEPL(EPAdministratorImpl.java:94) 
    at com.twitter.message.TwitterTest.main(TwitterTest.java:39) 
Caused by: java.lang.ClassNotFoundException: org.antlr.runtime.RecognizerSharedState 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 6 more 

我已經加入了相關的罐子超能力者-4.9.0.jar,ANTLR-3.0.1.jar,twitter4j核-2.2 .6.jar。請幫助我解決錯誤,因爲我已經做了很多谷歌,但沒有找到解決方案。

回答

0

antlr-runtime-3.2.jar是正確的jar(刪除antlr)

+0

嗨,感謝您的指導。但現在它給出了不同的錯誤:1. StatusListener listener = new twitter4j.StatusListener() - 未設置錯誤狀態列表程序。 2. twitterStream.addListener(listener); - 方法addlistner()對於twitter流是未定義的。我正在使用twitter4j-2.2.4.jar。感謝您的幫助。謝謝 – Zelig 2013-04-25 10:34:22