npm - “找不到 Python 可执行文件“python”,您可以设置 PYTHON 环境变量。”

Posted

技术标签:

【中文标题】npm - “找不到 Python 可执行文件“python”,您可以设置 PYTHON 环境变量。”【英文标题】:npm - "Can't find Python executable "python", you can set the PYTHON env variable." 【发布时间】:2016-03-26 03:59:20 【问题描述】:

我正在尝试运行以下命令:npm install -g bower gulp cordova ionic tsd@next karma-cli protractor node-gyp coffee-script js-beautify typescript npm-check

我已经安装了 Python、Visual Studio Express 和 node-gyp,所以我认为我会很好,但是我收到以下错误:

关于 "Can't find Python executable "python", you can set the PYTHON env variable." 错误,我有点困惑,因为我已经像这样设置了 PYTHON 环境变量:

有什么想法吗?

【问题讨论】:

你的实际路径中是否有下划线? 谢谢@PadraicCunningham,是的,有i.imgur.com/1kuv8Pw.png 你能完全按照你的设置发布完整的 evn 吗?您也可以将其添加到您的 PATH 使用可执行文件将其设置到您的文件夹中,C:\Program Files\Python_2.7.10 或添加到系统变量下的 PATH ***.com/a/4855685/2141635 没有问题,不客气。您可以添加并接受适合您的答案 【参考方案1】:

您正在以管理员身份运行命令提示符。您只为您的用户定义了 PYTHON。您需要在底部的“系统变量”部分中定义它。

此外,您应该只将变量指向文件夹,而不是直接指向可执行文件。

【讨论】:

谢谢,我已将C:\Program Files\Python_2.7.10;%PYTHON%; 添加为系统变量下的 PYTHON 变量,不幸的是我仍然遇到同样的错误 :( 正如其他 cmets 中提到的,%PYTHON% 应该放在 PATH 变量中,而不是 PYTHON。通过在 PYTHON 中添加它,您正在进行循环引用,这对您的计算机不利。 谢谢,刚刚更改了 PYTHON 并将其包含在 PATH 变量中,仍然得到同样的错误。啊:(【参考方案2】:

您必须将 python 添加到您的 PATH 变量中。您可以做的一件事是现在编辑您的 Path 变量并添加

;%PYTHON%;

你的变量 PYTHON 应该指向你的 python 安装的根目录。

【讨论】:

谢谢,我已将 PYTHON 路径设置为 C:\Program Files\Python_2.7.10;%PYTHON%;,但不幸的是我仍然遇到同样的错误 实际上你想将你的python路径设置为C:\Program Files\Python_2.7.10,然后编辑你的PATH变量并添加;%PYTHON;。我已经在本地查找了它,并添加了C:\Python34;C:\Python34\Scripts; 以使事情正常进行。虽然如您所见,我没有使用 Python 2。 实际上这篇文章:***.com/a/21433154/3378288 准确地描述了我试图解释的内容,但以更详细的方式;)。请注意:路径变量是PY_HOME 还是PYTHON 并不重要。重要的是它与您在路径变量中插入的内容相匹配。 omg... 我没有意识到我必须关闭命令窗口才能使新变量发挥作用。非常感谢大家的回复和建议! 安装 Python2.7.10 并设置 PATH 和 PYTHON 环境变量成功解决了这个问题。谢谢@jvecsei【参考方案3】:

https://github.com/nodejs/node-gyp#on-windows

https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#environment-setup-and-configuration

试试

npm config set python D:\Library\Python\Python27\python.exe

【讨论】:

【参考方案4】:

我安装了python2.7来解决这个问题。

【讨论】:

我不敢相信已经是 2018 年了,但他们要我安装 Python 2。 这解决了我的问题......很遗憾。 @ZhangBuzz 因为node-gyp依赖的gyp工具是为Python 2写的,不兼容Python 3。 这里是2021,他们还想要aa,2.7由于bug无法安装(无限循环)。 现在是 2022 年!【参考方案5】:

试试:

使用 Microsoft 的 windows-build-tools 安装所有必需的工具和配置,方法是从提升的 PowerShell 运行 npm install -g windows-build-tools(以管理员身份运行)。

https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#environment-setup-and-configuration

【讨论】:

这代表我成功了。虽然它会安装 Python 2.7,但很烦人,因为我不想用我不会使用的 Python 版本弄脏我的环境。 应该是完美的答案。 修复了这个错误,可能还有其他我还没有遇到的错误。进入开发机器设置步骤列表! 之后是否需要重启系统?看来我可以工作了【参考方案6】:

最简单的方法就是让NPM为你做一切,

npm --add-python-to-path='true' --debug install --global windows-build-tools

【讨论】:

别以为这个还没有被合并进去,在这个端也没有用——github.com/nodejs/node-gyp/pull/1109【参考方案7】:

以下解决方案之一适合您:

    npm 配置设置 python c:\Python\27\python.exeset PYTHON=D:\Python\bin\Python.exe npm config set python D:\Library\Python\Python27\python.exe 让 npm 为您配置一切(需要永远完成)npm --add-python-to-path='true' --debug install --global windows-build-tools(必须通过“以管理员身份运行”PowerShell 执行)

如果没有...尝试自己安装所需的包(我自己安装了,原来是node-sass,手动安装后,整个npm install就成功完成了

【讨论】:

第一次手动安装 node-sass 实际上对我有用。一直在与 python 的事情作斗争。【参考方案8】:

只需以管理员权限运行以下命令

npm install --global --production windows-build-tools

【讨论】:

windows-build0tools已弃用:npmjs.com/package/windows-build-tools【参考方案9】:

我最近在使用node:16-alpine 作为基础映像的 dockerfile 中遇到了这个问题。我添加了以下运行命令来解决这个问题:

FROM node:alpine as build-stage
RUN apk add --no-cache python3 py3-pip make g++

这里,node:alpinenode:16-alpine 两个标签是相同的。

【讨论】:

【参考方案10】:

我的问题是使用 Node v16。

我回到 Node v12(v14 可能也可以)并且它工作正常。

【讨论】:

【参考方案11】:

运行:npm --vs2015 install --global windows-build-tools

【讨论】:

【参考方案12】:
npm config set python D:\Library\Python\Python27\python.exe

Tom Gao 的回答对我有用

确保更改 npmrc 文件,因为它不会自动将 \ 作为路径 并在 env var 中添加 Python,也如答案中所述。

【讨论】:

以上是关于npm - “找不到 Python 可执行文件“python”,您可以设置 PYTHON 环境变量。”的主要内容,如果未能解决你的问题,请参考以下文章

为啥会得到,gyp ERR!堆栈错误:找不到 Python 可执行文件“python”?

text 错误:找不到Python可执行文件“python”,可以设置PYTHON env变量

从 groovy 脚本运行 gsutil:找不到 Python 可执行文件

安装 gulp-converter-tjs 时找不到 Python 可执行文件

找不到 Python 可执行文件“/path/to/executable/python2.7”,可以设置 PYTHON env 变量

安装node-sass的正确方法