python - Spark 安装 - 错误 : Could not find or load main class org. apache.spark.launcher.Main

标签 python apache-spark windows-10

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

  1. HADOOP_HOME

  2. SPARK_HOME

  3. PYSPARK_PYTHON

  4. JDK_HOME

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

Error: Could not find or load main class org.apache.spark.launcher.Main

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

执行环境

  1. Windows 10 企业版
  2. Spark 版本 - 2.3
  3. Python 版本 - 3.6.4

能否请您提供一些指示?

最佳答案

我有那个错误信息。它可能有几个根本原因,但这是我调查和解决问题的方式(在 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/中的文件找到 org.apache.spark.launcher.Main 类jars/*(参见上面的 -cp 选项)。我在这个 jars 文件夹中执行了一个 ls 并计算了 4 个文件而不是整个 spark distrib(~200 个文件)。 估计是安装过程中的问题。所以我重新安装了 spark,检查了 jar 文件夹,它工作得很好。

所以,你应该:

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

希望对您有所帮助。

关于python - Spark 安装 - 错误 : Could not find or load main class org. apache.spark.launcher.Main,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50435286/

相关文章:

python - pyspark 脚本需要 sbt scala 包生成器吗?

UWP Frame.GoBack 带参数

python - 从 HTML 表单发布值并在 Flask View 中访问它们

python、sqlite3 和两个值

c++ - 使用 gcc-4.1.2 在 RHEL5 上使用 Python 2.7.1 boost 1.44

python - 将 python 守护程序公开为服务

apache-spark - 流式场景的 Spark UI 上的 "Stages"是什么意思

apache-spark - 在 GCP Dataproc 中,我们可以在集群中使用的工作节点的最大数量是多少?

windows-10 - 从 PowerShell 调用 Windows Shell 函数?

java - Java中设置PATH的问题