【问题标题】:Spark-shell does not import specified jar fileSpark-shell 不导入指定的 jar 文件
【发布时间】:2022-01-06 14:35:50
【问题描述】:

总的来说,我是所有这些东西的完整初学者,所以如果我错过了一些完全明显的步骤,请原谅。我安装了 spark 3.1.2 和 cassandra 3.11.11,我试图通过这个guide 连接它们,我发现我在哪里制作了一个用于执行的胖罐。在我发布的链接中,当他们使用 jar 文件执行 spark-shell 命令时,有一行出现在开头。

INFO SparkContext: Added JAR file:/home/chbatey/dev/tmp/spark-cassandra-connector/spark-cassandra-connector-java/target/scala-2.10/spark-cassandra-connector-java-assembly-1.2.0-SNAPSHOT.jar at http://192.168.0.34:51235/jars/spark-15/01/26 16:16:10 INFO SparkILoop: Created spark context..

我正确地执行了所有步骤,但它没有在我的 shell 中显示任何类似的行。为了确认它没有被添加,我尝试了那个网站上的示例程序,它抛出了一个错误

java.lang.NoClassDefFoundError: com/datastax/spark/connector/util/Logging

我该怎么办?我正在使用 spark-cassandra-connector-3.1.0

【问题讨论】:

    标签: apache-spark cassandra spark-cassandra-connector spark-shell


    【解决方案1】:

    不需要自己编译,关注官方documentation——使用--packages自动下载所有依赖即可:

    spark-shell --packages com.datastax.spark:spark-cassandra-connector_2.12:3.1.0
    

    您的错误是连接器文件不包含依赖项,您需要列出所有内容,例如 java 驱动程序等。因此,如果您仍想使用 --jars 选项,则只需下载 assembly version 即可( link to jar) - 它将包含所有必要的依赖项。

    【讨论】:

    • 所以,我已经使用了该命令,但连接器仍然无法正常工作。给了我我提到的同样的错误,所以我改用胖 JAR。
    • 好吧,没关系。我意识到我还没有尝试过汇编 jar 方法。
    猜你喜欢
    • 2017-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-08
    • 1970-01-01
    • 2014-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多