如何使用 WinPTY 运行 npm 脚本?

Posted

技术标签:

【中文标题】如何使用 WinPTY 运行 npm 脚本?【英文标题】:How to run npm scripts with WinPTY? 【发布时间】:2019-07-02 11:43:08 【问题描述】:

我遇到了python freezing in Git bash on windows 的已知问题。 *** 上的许多答案建议使用WinPTY。

当我使用时效果很好:

winpty python foo.py

但我将 python 程序作为 npm 脚本的一部分运行。我的 package.json 有这个:

"scripts": 
  "start": "python foo.py && something else"
 

所以我想我也需要用 WinPTY 运行 npm 脚本:

winpty npm start

但这不起作用。我在不同的环境中收到不同的错误消息。

    我在安装了最新的 git 和 npm 的工作中得到“在 PATH 中找不到”,但 它在 PATH 中

winpty: 错误: 无法启动 'npm': Not found in PATH

    在我的个人计算机上使用稍旧的 git 时出现不同的错误:

错误 0x2 启动 npm start

知道为什么 npm 和 winpty 不能一起工作吗?

如果我在没有 winpty 的情况下运行 npm start,它可以正常工作。 winpty node 也可以。

【问题讨论】:

【参考方案1】:

我遇到了同样的问题。 实际上,在 nodejs 安装文件夹中,有 npm.cmd 那么使用 winpty 启动 npm 应该做的是

winpty npm.cmd install

【讨论】:

供我自己在 3-6 个月内参考 env PYTHON=/c/Python27/ winpty npm.cmd install 是更改默认 python 以便 node-gyp 工作的完整命令。

以上是关于如何使用 WinPTY 运行 npm 脚本?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用来自 VSCode 的 npm run 脚本进行调试?

为啥在 npm install 之后 npm 正在运行准备脚本,我该如何停止它?

如何在 Elastic Beanstalk 实例上运行任意 npm 脚本

尝试使用“npm start”运行此应用程序,但它不起作用。我如何使这个应用程序工作?

NPM 使用 React + Node + 同时运行构建如何?

如何修复 npm ERR!缺少脚本:从反应开始