gpt4 book ai didi

node.js - 无法使用 npm 运行任何子进程

转载 作者:行者123 更新时间:2023-12-04 14:54:14 27 4
gpt4 key购买 nike

我正在尝试为工作 repo 安装包,但是每当我尝试运行安装时,一旦它到达子进程(比如为包运行安装脚本),我就会收到一个奇怪的生成错误。我假设它在运行子进程时遇到问题。

一些信息:

  • Windows 机器
  • Node v12.22.3 和 npm v6.14.13(我试过 node 14)
  • 尝试使用 bash、windows 终端、cmd 提示符和 powershell(全部使用管理员)
  • 错误代码似乎是 4058,但我不确定它找不到什么

上周还好好的,现在突然什么都做不了了。我尝试了以下方法:

  • 关闭工作 AV
  • 删除 node_modulespackage-lock
  • 运行 npm cache clear --forcenpm cache verify
  • 卸载 Node 并重新安装
  • 完全卸载nvm和node并重新安装

我看到的错误是:

npm ERR! code ELIFECYCLE
npm ERR! syscall spawn =
npm ERR! file =
npm ERR! path =
npm ERR! errno ENOENT
npm ERR! root@ prepare: `husky install`
npm ERR! spawn = ENOENT
npm ERR!
npm ERR! Failed at the root@ prepare script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\dhers\AppData\Roaming\npm-cache\_logs\2021-07-19T18_28_56_807Z-debug.log

请注意,这不是一个沙哑的问题,任何运行子进程脚本的东西似乎都会发生这个错误。

我以前从未见过这种情况,而且我无法通过谷歌搜索来修复它。以下是 npm 日志中的一些信息:

59 silly lifecycle root@~prepare: Args: [ '-c', 'husky install' ]
60 info lifecycle root@~prepare: Failed to exec prepare script
61 silly lifecycle root@~prepare: Returned: code: -4058 signal: null
62 info lifecycle root@~prepare: Failed to exec prepare script
63 verbose stack Error: root@ prepare: `husky install`
63 verbose stack spawn = ENOENT
63 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:268:19)
63 verbose stack at onErrorNT (internal/child_process.js:470:16)
63 verbose stack at processTicksAndRejections (internal/process/task_queues.js:84:21)
64 verbose pkgid root@
65 verbose cwd C:\Users\dhers\Documents\Development\Work\seamless
66 verbose Windows_NT 10.0.19042
67 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "i"
68 verbose node v12.22.3
69 verbose npm v6.14.13

有没有人见过这个?我真的希望我只是忽略了一些 super 简单的东西。任何帮助将不胜感激,因为这让我现在停止了。

最佳答案

也许可以尝试以下方法:

  1. 清理 npm 缓存
npm cache clean --force
  1. 检查您使用的 npm 版本。也许应该更新:
npm install -g npm@latest
  1. 尝试使用另一个版本的包 huskey
  2. 对于这个特定场景,尝试通过添加跳过huskey install
export HUSKY_SKIP_INSTALL=true

到 npm install cmd 只是为了查看问题是否仍然存在于其他 prepare 脚本中。

  1. 将脚本添加到 postinstall Hook 而不是 prepare Hook ,以查看问题是否来自 Hook 。

  2. 在您的工作目录中逐级上移,并确保没有其他目录包含 /node_modules 目录或 package.json pakcage-lock.json 文件。有时 npm 认为它是项目的根。

关于node.js - 无法使用 npm 运行任何子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68445472/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com