2016-05-16 123 views
1

我是薩摩亞和風暴的初學者。 我正在爲薩摩亞學習Univerisity項目。 我讀過,爲了使用薩摩亞,我必須使用SPE(流處理引擎),就像Storm一樣。在Apache Storm中使用Apache SAMOA。第一次運行:「ClassNotFoundException:backtype.storm.topology.TopologyBuilder」

於是,我跟着的Apache Samoa官方網站上的步驟,我在命令行中鍵入此:

git clone http://git.apache.org/incubator-samoa.git 

cd incubator-samoa 

mvn -Pstorm package 

然後,在安裝後(所有的測試結果是「成功」),我也跟着這個指南安裝Storm和Zookeeper:http://www.tutorialspoint.com/apache_storm/apache_storm_installation.htm。一切似乎都好。

然後,我繼續按照薩摩亞的指導,直到「入門」部分,其中有一個例子。在這裏我遇到了問題。 我下載的示例數據集和解壓縮它,因爲它被描述,然後我試圖運行薩摩亞引導以下:

bin/samoa local target/SAMOA-Local-0.3.0-SNAPSHOT.jar "PrequentialEvaluation -l classifiers.ensemble.Bagging -s (ArffFileStream -f covtypeNorm.arff) -f 100000" 

但是,由於薩摩亞任務腳本是bin/samoa <platform> <jar> "<task>"的格式,我修改命令以這樣的方式

bin/samoa storm target/SAMOA-Storm-0.4.0-incubating-SNAPSHOT.jar "PrequentialEvaluation -l classifiers.ensemble.Bagging -s (ArffFileStream -f covtypeNorm.arff) -f 100000" 

但執行失敗,我得到這些錯誤:

bin/samoa storm target/SAMOA-Storm-0.4.0-incubating-SNAPSHOT.jar "PrequentialEvaluation -l classifiers.ensemble.Bagging -s (ArffFileStream -f covtypeNorm.arff) -f 100000" 
bin/samoa 
Deploying to STORM 
Exception in thread "main" java.lang.NoClassDefFoundError: backtype/storm/topology/TopologyBuilder 
    at org.apache.samoa.topology.impl.StormTopology.<init>(StormTopology.java:40) 
    at org.apache.samoa.topology.impl.StormComponentFactory.createTopology(StormComponentFactory.java:64) 
    at org.apache.samoa.topology.TopologyBuilder.initTopology(TopologyBuilder.java:87) 
    at org.apache.samoa.topology.TopologyBuilder.initTopology(TopologyBuilder.java:71) 
    at org.apache.samoa.tasks.PrequentialEvaluation.setFactory(PrequentialEvaluation.java:193) 
    at org.apache.samoa.topology.impl.StormSamoaUtils.argsToTopology(StormSamoaUtils.java:82) 
    at org.apache.samoa.LocalStormDoTask.main(LocalStormDoTask.java:61) 
Caused by: java.lang.ClassNotFoundException: backtype.storm.topology.TopologyBuilder 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
    ... 7 more 

誰能幫助我?

PS:(!包括格式錯誤)對不起任何錯誤,但我在這個領域的新:)

在此先感謝(甚至在StackOverflow的!)。

+0

也許版本衝突...在Storm 1.x中很多軟件包已從'backtype/...'重命名爲'org /阿帕奇/風暴/ ...'。 –

回答

0

請確保您的集羣和所有庫依賴項都在相同的版本上。 Storm 1.0更改了軟件包名稱,因此依賴Storm核心的代碼將會失敗。如果風暴簇爲10,則所有代碼都應該使用.10如果1.0則全部應該在1.0上

相關問題