无法找到Pyspark所需的Java组件

qv7cva1a  于 12个月前  发布在  Spark
关注(0)|答案(1)|浏览(168)

我知道这个问题已经在其他post上解决了。但是,即使我按照别人的解决方案,我也无法解决我的问题。
两天前,我下载并安装了PySpark在我的Myterlab环境。现在,当我试图创建一个Spark会话我收到FileNotFoundError:[WinError2]系统找不到指定的文件。
这是我的原始代码

from pyspark.sql import SparkSession
spark = SparkSession.builder.appName('practice').getOrCreate()

字符串
误差

---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
Cell In[3], line 2
      1 from pyspark.sql import SparkSession
----> 2 spark = SparkSession.builder.appName('practice').getOrCreate()

FileNotFoundError: [WinError 2] The system cannot find the file specified


我尝试修改SPARK_HOME、JAVA_HOME和PATH,但这并没有解决我的问题。

import os
os.environ["JAVA_HOME"] = "C:\Java"
os.environ["PATH"] = "C:\Java\bin;" 
spark_home_bin = "C:\spark-3.5.0-bin-hadoop3 (1)\spark-3.5.0-bin-hadoop3\bin"
os.environ['PATH'] = spark_home_bin + ";" + os.environ["PATH"]
os.environ["SPARK_HOME"] = "C:\spark-3.5.0-bin-hadoop3 (1)\spark-3.5.0-bin-hadoop3\bin"


我还尝试卸载并重新安装所有程序(Java,Spark和Anaconda)。我目前的这些程序版本是:

  • Java:版本1.8.0_391
  • Apache Spark 3.0.5
  • Apache,包类型:为apache Hadoop 3.3及更高版本预构建,或使用用户提供的apache Hadoop预构建

我的环境是这样的Environment variables
我很感激任何关于我错过了什么的建议。
我试过了,以下几点:
1.下载旧版本的Java,因为其他用户出于兼容性原因建议使用版本8和11。
1.安装并重新安装一切
1.更新“环境变量”中的“PATH”变量
1.每次更新“PATH”变量时,重新启动Linux内核

**编辑:**我在Spark_home路径中有一个错误,正确的错别字是:

os.environ["SPARK_HOME"] = "C:\spark-3.5.0-bin-hadoop3\spark-3.5.0-bin-hadoop3"


注意:我也改变了我的Spark文件的名称,删除空格和(1)我有.现在,我得到的错误是:

PySparkRuntimeError                       Traceback (most recent call last)
Cell In[6], line 2
      1 from pyspark.sql import SparkSession
----> 2 spark = SparkSession.builder.appName('practice').getOrCreate()
...
PySparkRuntimeError: [JAVA_GATEWAY_EXITED] Java gateway process exited before sending its port number.

n1bvdmb6

n1bvdmb61#

Spark只能处理Hadoop中的文件。您正在本地windows机器上设置环境变量。您需要在HDFS中设置bin路径。

相关问题