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

2021/11/1 CircleCI构建报错:找不到Python可执行文件,可设置PYTHON环境变量

问题根因
  • 你项目依赖的旧版node-sass内置了node-gyp@3.8.0,该版本仅支持Python2,无法识别Python3
  • 你使用的circleci/ruby:2.7.4-node-browsers镜像为滚动更新标签,近期官方更新镜像后默认移除了Python2,且系统未配置python别名指向Python3可执行文件,导致node-gyp查找Python环境失败,这也是此前正常的提交现在构建失败的核心原因
  • 此次构建自动使用了Node 16版本,旧版node-sass本身不兼容Node 16,触发了源码编译逻辑,才会调用node-gyp依赖Python环境
解决方案

可根据项目情况任选以下一种:

  • 最优方案(长期无兼容问题):将node-sass替换为官方推荐的sass(dart-sass),两者API完全兼容,无需修改业务代码,且不存在原生编译依赖,不会出现Python、Node版本兼容问题。执行命令npm uninstall node-sass && npm install sass即可,yarn环境对应替换为yarn remove node-sass && yarn add sass
  • 临时修复方案(不修改业务依赖):在CircleCI配置的node/install-packages步骤前添加一条执行命令:
- run:
    name: 配置Python别名
    command: sudo ln -s /usr/bin/python3 /usr/bin/python

同时可以在node/install-packages参数中指定Node版本为你之前构建正常的14.x版本,避免Node版本不兼容问题:

- node/install-packages:
    pkg-manager: yarn
    cache-key: "yarn.lock"
    node-version: '14'
  • 兼容升级方案:将node-sass升级到v6.0及以上版本,该版本适配Node 16,且依赖的node-gyp版本已支持Python3,无需额外配置环境

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 11:36:00