You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Win10下PySpark初始化SparkSession出现FileNotFoundError求助

PySpark初始化SparkSession时FileNotFoundError的解决方法

环境信息

  • Win10 操作系统
  • Python 3.9.7
  • Spark 版本:3.1.2-bin-hadoop2.7

问题描述

安装PySpark后,执行初始化SparkSession的代码时触发FileNotFoundError:

import pyspark
from pyspark.sql import SparkSession

spark = SparkSession.builder.appName('SparkByExamples.com').getOrCreate()

报错核心内容:

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

切换至其他Anaconda环境重复操作,问题依然存在。

排查结果

执行代码检查环境变量:

import os
print(os.environ.get("SPARK_HOME"))
print(os.path.join(os.environ.get("SPARK_HOME"), './bin/spark-submit.cmd'))

输出结果:

C:\Spark\spark-3.1.2-bin-hadoop2.7
C:\Spark\spark-3.1.2-bin-hadoop2.7./bin/spark-submit.cmd

解决步骤

1. 修正SPARK_HOME路径格式

从排查结果可见,路径拼接出现格式错误(末尾的./导致路径无效),需确保:

  • SPARK_HOME环境变量的值末尾无多余斜杠或符号,正确路径为C:\Spark\spark-3.1.2-bin-hadoop2.7
  • 确认文件系统中C:\Spark\spark-3.1.2-bin-hadoop2.7\bin\spark-submit.cmd文件真实存在

2. 配置Java运行环境

PySpark依赖Java环境,Spark 3.1.x适配Java 8或Java 11:

  • 安装对应版本的Java(建议选择无空格的安装路径)
  • 添加JAVA_HOME环境变量,指向Java安装根目录(例如C:\Java\jdk1.8.0_301)
  • 将%JAVA_HOME%\bin添加到系统Path环境变量中

3. 验证环境配置有效性

配置完成后重启终端或IDE:

  • 执行echo %SPARK_HOME%和echo %JAVA_HOME%,确认环境变量正确加载
  • 执行spark-submit --version,若能正常输出Spark版本信息,说明环境配置正确

4. 代码中手动指定环境变量(可选)

若环境变量全局配置无效,可在代码中手动指定路径:

import pyspark
from pyspark.sql import SparkSession
import os

# 替换为你的实际路径
os.environ["SPARK_HOME"] = "C:\Spark\spark-3.1.2-bin-hadoop2.7"
os.environ["JAVA_HOME"] = "C:\Java\jdk1.8.0_301"

spark = SparkSession.builder.appName('SparkByExamples.com').getOrCreate()

内容的提问来源于stack exchange,提问作者Jay Wang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 14:44:53