将apachesamoa与apachestorm结合使用第一次运行:“classnotfoundexception:backtype.storm.topology.topologybuilder”

zkure5ic  于 2021-06-21  发布在  Storm
关注(0)|答案(1)|浏览(356)

我是萨摩亚和风暴的初学者。我在为一个大学项目学习萨摩亚。我读到为了使用samoa,我必须使用spe(流处理引擎),比如storm。
因此,我遵循apache samoa官方网站上的步骤,在命令行中键入以下内容:

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

cd incubator-samoa

mvn -Pstorm package

然后,在安装之后(所有测试结果都是“成功”),我按照另一个指南安装storm and 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!):)
提前谢谢。

sxissh06

sxissh061#

请确保群集和所有库依赖项在同一版本上。storm 1.0更改了包名,因此依赖storm core作为提供的库的代码将失败。如果storm cluster为0.10,则所有代码都应使用0.10如果为1.0,则所有代码都应为1.0

相关问题