当我尝试运行火花蒸汽的示例代码时:" kafka_wordcount.py" 在文件夹下:/ usr / local / spark / examples / src / main / python / streaming
代码明确地描述了执行代码的指令:
" $ bin/spark-submit --jars \
external/kafka-assembly/target/scala-*/spark-streaming-kafka-assembly-*.jar \
examples/src/main/python/streaming/kafka_wordcount.py \
localhost:2181 test
test是主题名称。但我找不到罐子和路径:
"外部/卡夫卡组件/目标/ scala- /火花流-卡夫卡组件 - 的.jar"
所以我创建了一个文件夹" streaming / jar /"把所有的罐子都放进去 网站http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22spark-streaming-kafka-assembly_2.10%22,然后我运行
" park-submit --jars~ / stream-example / jars / spark-streaming-kafka-assembly _ * .jar kafka_wordcount.py localhost:2181 topic"
显示
"错误:JAR中没有设置主类;请用--class指定一个 使用--help运行使用帮助或--verbose运行调试输出"
这有什么问题?罐子在哪里?
非常感谢!!
答案 0 :(得分:2)
很久以前就问过这个问题,所以我想你现在已经弄明白了。 但是,由于我遇到了同样的问题,我将发布适用于我的解决方案。
本指南的部署部分(http://spark.apache.org/docs/latest/streaming-kafka-integration.html)表示您可以使用--packages
参数传递lib,如下所示:
bin/spark-submit \
--packages org.apache.spark:spark-streaming-kafka_2.10:1.6.2 \
examples/src/main/python/streaming/kafka_wordcount.py \
localhost:2181 test
您也可以在此处下载jar:http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22spark-streaming-kafka-assembly_2.10%22
注意:我没有运行上面的命令,我测试了这个其他示例,但它应该以相同的方式工作:
bin/spark-submit
--packages org.apache.spark:spark-streaming-kafka_2.10:1.6.2 \
examples/src/main/python/streaming/direct_kafka_wordcount.py \
localhost:9092 test