在 Windows 上使用 pyspark 不工作- py4j

Using pyspark on Windows not working- py4j

我使用 this tutorial and this 在 Windows 上安装了 Zeppelin。 我还安装了 java 8 以避免出现问题。

我现在可以启动 Zeppelin 服务器,我正在尝试 运行 此代码 -

%pyspark
a=5*4
print("value = %i" % (a))
sc.version

我收到此错误,与 py4j 有关。我之前在使用这个库时遇到过其他问题(与 here 相同),为了避免这些问题,我将我计算机上 Zeppelin 和 Spark 中 py4j 的库替换为最新版本 - py4j 0.10.7 .

这是我得到的错误-

Traceback (most recent call last):
  File "C:\Users\SHIRM~1.ARG\AppData\Local\Temp\zeppelin_pyspark-1240802621138907911.py", line 309, in <module>
    sc = _zsc_ = SparkContext(jsc=jsc, gateway=gateway, conf=conf)
  File "C:\Users\SHIRM.ARGUS\spark-2.3.2\spark-2.3.2-bin-hadoop2.7\python\pyspark\context.py", line 118, in __init__
    conf, jsc, profiler_cls)
  File "C:\Users\SHIRM.ARGUS\spark-2.3.2\spark-2.3.2-bin-hadoop2.7\python\pyspark\context.py", line 189, in _do_init
    self._javaAccumulator = self._jvm.PythonAccumulatorV2(host, port, auth_token)
  File "C:\Users\SHIRM.ARGUS\Documents\zeppelin-0.8.0-bin-all\interpreter\spark\pyspark\py4j-0.10.7-src.zip\py4j\java_gateway.py", line 1525, in __call__
  File "C:\Users\SHIRM.ARGUS\Documents\zeppelin-0.8.0-bin-all\interpreter\spark\pyspark\py4j-0.10.7-src.zip\py4j\protocol.py", line 332, in get_return_value
py4j.protocol.Py4JError: An error occurred while calling None.org.apache.spark.api.python.PythonAccumulatorV2. Trace:

我用谷歌搜索了它,但找不到任何发生过这种情况的人。

有人知道我该如何解决这个问题吗?

谢谢

我觉得你已经安装了 Java 9 或 10。卸载这些版本中的任何一个并从这里安装 Java 8 的新副本:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

在hadoop_env.cmd中设置JAVA_HOME(用任何文本编辑器打开)。

注意:Java 8 或 7 是稳定版本,可以使用和卸载 JAVA 的任何现有版本。确保在 JAVA_HOME.

中添加 JDK(不是 JRE)

我今天遇到了同样的问题,我通过在系统环境中添加PYTHONPATH来修复它,如:
%SPARK_HOME%\python\lib\py4j;%SPARK_HOME%\python\lib\pyspark