如何向storm集群提交apache storm拓扑?

oxcyiej7  于 2021-07-15  发布在  Storm
关注(0)|答案(2)|浏览(377)

我将遵循以下教程:https://docs.microsoft.com/en-us/azure/hdinsight/storm/apache-storm-develop-java-topology
到目前为止我所做的是
maven设置
vi*.java文件(在 src/main/java/com/microsoft/example 目录)
randomsentencespout.java文件
拆分句子.java
字数.java
wordcounttopology.java语言
编译 jar cf storm.jar *.class (英寸 target/classes/com/microsoft/example 目录)
randomsentencespout.class SplitSequence.class wordcount.class wordcounttopology.class类
以上4个文件用于 storm.jar 文件
然后,我试着

storm jar ./storm.jar com.microsoft.example.WordCountTopology WordCountTopology

storm jar ./storm.jar WordCountTopology

但这两个都失败了,他们说:
错误:找不到或加载主类com.microsoft.example.wordcounttopology

错误:无法找到或加载主类wordcounttopology
根据一份文件,上面说
语法:storm jar拓扑jar路径类。。。
使用指定的参数运行类的主方法。~/.storm中的storm jar和configs放在类路径上。该过程被配置为在提交拓扑时,stormsubmitter将在拓扑jar路径上传jar。
我找不到修理的地方。
我如何解决这个问题?

xxe27gdn

xxe27gdn1#

我认为您的jar文件不包含类wordcounttopology。你可以和我核对一下 jar tf storm.jar | grep WordCountTopology .

4bbkushb

4bbkushb2#

看起来您的jar不包含保存主类信息的清单文件。
尝试包含清单文件,或者可以运行下面的java命令来包含清单文件
希望这能奏效!

jar cvfe storm.jar mainClassNameWithoutDotClassExtn *.class

相关问题