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

Mac下PyCharm创建SparkSession失败,终端运行正常求助

解决PyCharm运行PySpark找不到Java Runtime的问题

你的问题核心是PyCharm没有加载终端里已配置的Java/Spark环境变量,所以终端能正常运行但PyCharm报错。以下是具体解决方法:

方法1:给PyCharm配置环境变量

  1. 先在终端执行以下命令,获取你的环境变量路径:
    echo $JAVA_HOME
    echo $SPARK_HOME
    
  2. 打开PyCharm,点击顶部菜单栏的Run > Edit Configurations
  3. 找到你运行的Python脚本对应的配置项,在Environment variables区域:
    • 点击右侧的...按钮,添加两个变量:
      • 变量名JAVA_HOME,值为终端输出的Java路径
      • 变量名SPARK_HOME,值为终端输出的Spark路径
    • 保存配置后重新运行脚本

方法2:在代码中直接指定Java路径

如果不想配置PyCharm全局环境,可以在代码开头手动设置JAVA_HOME:

import os
# 替换成你自己的JAVA_HOME路径,可从终端echo $JAVA_HOME获取
os.environ["JAVA_HOME"] = "/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home"

from pyspark.sql import SparkSession

spark = (
    SparkSession.builder
        .getOrCreate()
)

方法3:让PyCharm加载终端的环境配置文件

如果你的终端用的是zsh(Mac默认),可以让PyCharm读取~/.zshrc里的配置:

  1. 打开PyCharm的Preferences > Build, Execution, Deployment > Console > Python Console
  2. 在Environment variables里添加终端配置文件的加载命令,确保环境变量生效

额外检查

确认PyCharm使用的Python解释器和终端一致:

  • 终端执行which python得到路径
  • 在PyCharm的Preferences > Project: 你的项目名 > Python Interpreter里,选择和终端相同的解释器

补充:终端能正常运行是因为终端启动时自动加载了~/.zshrc或~/.bash_profile里的环境变量,而PyCharm默认不会继承这些配置,导致找不到Java运行时。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 01:45:35