Spark 会话问题:异常:Java 网关进程在发送其端口号之前退出

Spark Session Problem: Exception: Java gateway process exited before sending its port number

我尝试在 Spark 中启动会话。我已经下载了 Java 版本如下:

java version "17" 2021-09-14 LTS
Java(TM) SE Runtime Environment (build 17+35-LTS-2724)
Java HotSpot(TM) 64-Bit Server VM (build 17+35-LTS-2724, mixed mode, sharing)

我也安装了 Pyspark。

Python 3.8.5 (default, Sep  4 2020, 02:22:02) 
[Clang 10.0.0 ] :: Anaconda, Inc. on darwin

但是当我尝试开始会话时,出现异常错误。代码:

#Creating a spark connection
from pyspark import SparkContext

sc = SparkContext(master = "local")

错误:

Exception: Java gateway process exited before sending its port number

你能帮忙吗?提前致谢。

您的 java 版本 (17) 对于 Spark 来说太高了。 来自火花 documentation

Spark runs on Java 8/11, Scala 2.12, Python 3.6+ and R 3.5+

因此您需要将 Java 减少到 11 或 8。

我已经下载了 Java 版本 11 并且知道它可以正常工作。

查看如何卸载现有 Java 版本:https://explainjava.com/uninstall-java-macos/

下载Java11:https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html