Spark安装 - 错误:无法找到或加载主类org.apache.spark.launcher.Main

时间:2018-05-20 13:23:32

标签: python apache-spark windows-10

在spark安装2.3并在.bashrc中设置以下env变量(使用gitbash)

  1. HADOOP_HOME

  2. SPARK_HOME

  3. PYSPARK_PYTHON

  4. JDK_HOME

  5. 执行 $ SPARK_HOME / bin / spark-submit 会显示以下错误。

      

    错误:无法找到或加载主类org.apache.spark.launcher.Main

    我在stackoverflow和其他网站上做了一些研究检查,但无法弄清楚问题。

    执行环境

    1. Windows 10企业版
    2. Spark版本 - 2.3
    3. Python版本 - 3.6.4
    4. 你能提供一些指示吗?

3 个答案:

答案 0 :(得分:2)

我收到了错误消息。它可能有几个根本原因,但这是我如何调查和解决问题(在Linux上):

  • 而不是启动spark-submit,请尝试使用bash -x spark-submit查看哪一行失败。
  • 多次执行该过程(因为spark-submit调用嵌套脚本),直到找到调用的基础进程:在我的情况下:

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java -cp '/opt/spark-2.2.0-bin-hadoop2.7/conf/:/opt/spark-2.2.0-bin-hadoop2.7/jars/*' -Xmx1g org.apache.spark.deploy.SparkSubmit --class org.apache.spark.repl.Main --name 'Spark shell' spark-shell

因此,spark-submit启动了一个java进程,无法使用/opt/spark-2.2.0-bin-hadoop2.7/jars/*中的文件找到org.apache.spark.launcher.Main类(请参阅上面的-cp选项)。我在这个jars文件夹中做了一个ls并计算了4个文件而不是整个spark distrib(~200个文件)。 这可能是安装过程中的一个问题。所以我重新安装了spark,检查了jar文件夹,它就像一个魅力。

所以,你应该:

  • 检查java命令(cp选项)
  • 检查你的jars文件夹(它至少包含了所有的spark - * .jar?)

希望它有所帮助。

答案 1 :(得分:0)

我也遇到了同样的问题,但是解决方案是我们缺少一些基本文件,因此请从Cdrive中删除Spark文件夹,然后重新安装

答案 2 :(得分:0)

  1. 检查包含所有文件夹和文件(xml、jar 等)的 Spark 主目录,否则安装 Spark。
  2. 检查您的 .bashrc 文件中是否设置了 JAVA_HOME 和 SPARK_HOME 环境变量,尝试设置以下内容:
<块引用>

导出JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/

<块引用>

导出 SPARK_HOME=/home/ubuntu-username/spark-2.4.8-bin-hadoop2.6/

或者你的 spark 下载到的任何地方

<块引用>

导出 SPARK_HOME=/home/Downloads/spark-2.4.8-bin-hadoop2.6/

完成后,保存您的 .bash 并在终端上运行 bash 命令或重新启动 shell 并尝试 spark-shell