为什么spark-submit和spark-shell失败并且"找不到Spark程序集JAR.你需要在运行这个程序之前构建Spark."?

Sil*_*Jay 32 apache-spark

我试图运行spark-submit,我得到"无法找到Spark程序集JAR.你需要在运行这个程序之前构建Spark." 当我尝试运行spark-shell时,我得到了同样的错误.在这种情况下我必须做什么.

小智 51

在Windows上,我发现如果它安装在路径中有空格的目录(C:\ Program Files\Spark)中,安装将失败.将其移动到根或其他目录,没有空格.

  • 这是最好的答案.接受的答案是显而易见的. (4认同)

suz*_*omo 27

您的Spark包不包含已编译的Spark代码.这就是为什么你从这些脚本错误消息spark-submitspark-shell.

您必须从Spark下载页面的 "选择包类型"部分下载一个预构建版本.

  • 我得到了同样的错误,并下载了预建版本的spark ..运行Windows (8认同)
  • @Marin 如果您针对您的问题提出问题,请创建新问题,并描述您的环境(Spark 版本、操作系统版本、Java 版本等) (2认同)

Lin*_*ina 11

尝试mvn -DskipTests clean package先运行构建Spark.


Sol*_*mon 5

如果您的spark二进制文件位于文件夹名称中带有空格的文件夹中(例如,“ Program Files(x86)”),则该文件夹无效。我将其更改为“ Program_Files”,然后spark_shell命令在cmd中起作用。

  • 这与jurban1997(3个月大)的答案相同。 (3认同)