在运行 NPM 时找不到 NPM-cli. js

通常我可以使用 Npm安装一个库,但是今天在安装文书时我遇到了这个错误。请帮忙找出根本原因。

D:\Works\phonegap\ionic\todo>npm install -g yo
module.js:340
throw err;
^
Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\node_modules\npm\bin\npm-cli.js'


at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:906:3

我查看了文件夹:

C: Program Files nodejs node _ module npm bin

但是没有看到 Node _ module文件夹所描述的错误。

我也尝试找到 Npm-cli. js,并看到它实际上是在 C:\Program Files\nodejs\node_modules\npm\bin\

299315 次浏览

结果表明,这是由于系统变量中节点的路径错误造成的。路径当前指向

(我真的不知道我什么时候修改的)

C:\Program Files\nodejs\node_modules\npm\bin

所以我改变了

C:\Program Files\nodejs

而且非常有效。

在 Mac 上:

当我在 Mavencom.github.eirslett FrontendPlugin 中运行这个插件时,出现了同样的错误。

最终我不得不:

通过安装程序下载安装 Node.js: http://nodejs.org/

从我的 maven 构建结构中删除所有的 node/node_modules/文件夹。

如果在你的路径中有 C:\Program Files\nodejsC:\Program Files\nodejs\node_modules\npm\bin,你也可能有这个问题。将后者从路径中移除

您需要在命令行中运行它。

SET PATH=C:\Program Files\Nodejs;%PATH%

其他的答案对我都不管用。

下面是我在 Windows 上的 git bash shell 中编写的代码:

PATH="/c/Program Files/nodejs/:$PATH" npm run yeoman

除了以上我不得不删除 C:\Users\%USERNAME%\AppData\Roaming\npm也。 这有帮助。

这与问题中的情况不同,但可能对面临类似问题的人有所帮助。在 Windows 上,如果你从某个 CI/自动化工具调用 npm命令,你可能会遇到这样的错误:

Error: Cannot find module 'SOME_PATH\node_modules\npm\bin\npm-cli.js'

其中 SOME_PATH不是 Program Files/...而是某个项目目录。所以 npm 试图找到 npm-cli。Js 在项目根目录中,而不是在 Program Files/nodejs中搜索它。

原因是 npm.cmd 脚本:

:: Created by npm, please don't edit manually.
@ECHO OFF


SETLOCAL


SET "NODE_EXE=%~dp0\node.exe"
IF NOT EXIST "%NODE_EXE%" (
SET "NODE_EXE=node"
)




SET "NPM_CLI_JS=%~dp0\node_modules\npm\bin\npm-cli.js"
FOR /F "delims=" %%F IN ('CALL "%NODE_EXE%" "%NPM_CLI_JS%" prefix -g') DO (
SET "NPM_PREFIX_NPM_CLI_JS=%%F\node_modules\npm\bin\npm-cli.js"
)
IF EXIST "%NPM_PREFIX_NPM_CLI_JS%" (
SET "NPM_CLI_JS=%NPM_PREFIX_NPM_CLI_JS%"
)


"%NODE_EXE%" "%NPM_CLI_JS%" %*

该脚本使用 %~dp0查找 npm-cli。但是一些自动化工具可以按照 %~dp0指向本地项目目录的方式设置工作目录,这样脚本就不能正常工作。

一个可能的解决方案是将 npm 调用从这里更改

npm.cmd install

这个

cmd.exe /c npm.cmd install

在升级到 nodejs 最新版本时,实际上有2个路径被添加到您的系统变量中。
1. C: Program Files nodejs
2. C: Program Files nodejs node _ module npm bin
对于 Windows 7/8/8.1用户,他们将没有一个环境变量 Windows 10智能 GUI。
不管怎样,你要做的就是搜索 "C:\Program Files\nodejs\node_modules\npm\bin"并删除它。
此外,从环境变量中删除 "C:\Users\%USERNAME%\AppData\Roaming\npm"。我发布这个答案,因为我浪费了我的10个小时在互联网上寻找解决方案。通过综合上述答案,我最终解决了这个问题。

VS2017中为我提供的解决方案(工具下 | 选项...)

Under Tools | Options ...

我把路径改为: C: Program Files nodejs

我在 Windows7上安装 node9.0.0时遇到了这个问题 最后的解决办法就是 Npm Npm.cmd Npx Npx.cmd 来自 C: Program Files nodejs node _ module npm bin 在这之前,一个解决方案是运行 C: Program Files nodejs npm 所以这是一种方法,所以看看你是否有和我一样的问题。

不要更改任何环境变量

是安装程序导致了这个问题,并且没有安装所有需要的文件。

我刚刚修复的 NODEJS 设置上的 Windows 7和它的工作非常好。也许你可以重新安装,只是以防万一的东西不工作。

在 node _ module 中手动创建一个 npm 文件夹,并使用修复选项重新运行安装程序。

这里所有的解决方案对我来说都不管用,但是当我重新启动我的系统并再次执行 npm install之后,它起作用了。 我猜测我之前运行的一个或多个进程都坚持使用它。

在 Windows10上重启简单的电脑就为我创造了奇迹

在我的例子中,我使用的是 Nvm-windows 1.1.6,我使用 nvm install latest更新了 nodejs 版本,它最终告诉我已经安装了 nodejs 和 npm,但是当我尝试执行 npm install时,我收到了

错误: 无法找到模块‘ C: Program Files nodejs node _ module npm bin npm-cli. js’

在检查 nvm-windows 结构时,我发现 C:\Program Files\nodejs%APPDATA%\nvm\NODE_VERSION进行了符号链接(在我的例子中,NODE _ VERION 是 v9.7.1) ,node_modules文件夹中没有任何内容,这导致了这个错误。解决方案是从以前版本的 node_modules文件夹中复制 npm文件夹并粘贴到其中。然后我用 npm install npm@next -g更新了我的 npm,一切又开始工作了。

在我安装 谷歌浏览器/木偶师之后,这种情况开始发生,解决方案是重新安装 npm:

$ npm i npm@latest

或者

$ npm install npm@latest

对于我来说,上面的方法都不管用,我只是注意到每次执行“ npm install...”时,任何 npm 命令都会停止工作。 所以每次安装的时候,我都要运行 NodeJS 安装程序并选择“修复”。 直到我找到一个真正的解决办法:)

我刚刚修复了我的 NodeJS 安装,它为我工作!

转到 Control Panel\All Control Panel Items\Programs and Features-> 查找 NodeJS并选择修复选项。希望这有所帮助。

我在使用 nvm 安装节点8.5时遇到了同样的问题

$ nvm uninstall 8.5
8.5.0
Uninstalling node v8.5.0...Error removing node v8.5.0
Manually remove C:\Users\Omkar\AppData\Roaming\nvm\v8.5.0.


$ nvm install 8.5
8.5.0
Downloading node.js version 8.5.0 (64-bit)...
Complete
Creating C:\Users\Omkar\AppData\Roaming\nvm\temp


Downloading npm version 5.3.0... Complete
Installing npm v5.3.0...


Installation complete. If you want to use this version, type


nvm use 8.5.0


Omkar@VAST-0137 MINGW64 /d/code

这对我很有效,因为使用 nvm 之前没有正确安装节点8.5。我想出来了,因为“ npm bin npm-cli”。Js”文件夹和文件之前不是在 node _ module 内创建的。

从已安装的节点路径复制名为 npm的目录(在我的示例中,在 C:\Program Files\nodejs\node_modules中可以使用 npm 目录)。

导航到 C:\Users\%USERNAME%\AppData\Roaming\npm\node_modules并将复制的 npm目录粘贴到那里。

这种方法对我有效,当我有同样的错误..。

只要运行以下命令:

npm i npm@latest -g

我在窗户上也有同样的问题。 我刚刚修复了 Node,在重新启动 Windows 上的命令之后,它运行良好。

Npm install-g npm@[ version ]修复了这个问题

将 NPM 更新到最新版本对我来说很有效:

npm install npm@latest -g

对于那些还在思考这个问题的人来说:

  • 从官方网站安装节点(检查 npm 和节点版本以检查 是否已安装妥当,是否已安装在新的终端机/综合传送中心) ;
  • 立即安装 nvm,并提示是否用 nvm 管理当前节点,点击是;
  • 打开新的 cmd 并运行 nvm。

更改环境路径变量 C: Program Files nodejs node _ module npm bin 并打开命令终端和 npm-v 和

在 Windows10上:

  1. 按 Windows 键,键入编辑系统环境变量,然后输入。
  2. 点击环境变量..。
  3. 在标题为 Environment Variables 打开的窗口的下半部分,您将看到一个名为 System Variables 的表,其中有两列,第一列名为 variable。
  4. 找到具有可变 Path 的行并单击它。
  5. 单击“编辑”,将打开一个名为“编辑环境变量”的窗口。
  6. 在这里,如果你发现

C: Program Files nodejs node _ module npm bin

选择它,然后点击你右边的编辑按钮,然后编辑这个字段到你有 nodejs 文件夹的路径,在我的例子中,它只是把它缩短到:

C: Program Files nodejs

然后关闭所有 cmd 或 Powershell 终端,再次打开它们,npm 正在工作。

我知道这是一篇较早的文章,但在我写这篇文章的时候,Node js 的版本是12.13.1。人们通常会遇到这种情况,因为他们可能已经安装了以前版本的 Node js,该版本在系统路径中添加了以下内容。

C: Program Files nodejs node _ module npm bin

然而,新版本需要添加以下内容:-

C: Program Files nodejs

我指的是安装 Nodejs 的路径

C: Program Files nodejs

但是,如果你给出了一个不同的位置,你应该把它指向那里。

我今天在 Linux 服务器上遇到了完全相同的问题。原因很简单,因为我没有在 make之后执行 make install,而是试图直接调用生成的 npm。因此,PATH 和一切都是一团糟。

所以对我来说,解决方案就是在 make之后执行 make install,然后在 .node/bin/npm下运行 npm

错误: 无法找到模块‘ C: Program Files nodejs node _ module npm bin node _ module npm bin npm-cli. js’

看看上面,很明显,路径有问题。 ‘ C: Program Files nodejs node _ module npm bin node _ module npm bin npm-cli. js’ 应该改成—— > ‘ C: Program Files nodejs node _ module npm bin npm-cli. js’ 这意味着中间的“ node _ module npm bin”被复制了,这导致了这样一个愚蠢的错误。 我修复了它通过编辑系统变量和更新 PATH 如上所述。

同样的问题。

通过从

C: Users UserName AppData Roaming npm node _ module npm bin

C: Users UserName node _ module npm bin

丢失的文件是

  • Npm
  • Npm.cmd
  • Npm-cli. js
  • Npx
  • Npx.cmd
  • Npx-cli. js

我在 Windows10上安装 节点版本管理器(NVM)时也遇到过同样的问题。

每当我运行这个命令:

npm install -g yarn

我得到了下面的错误:

错误: 无法找到模块‘ C: Program Files nodejs node _ module npm bin node _ module npm bin npm-cli. js’

我是这样修复它的:

问题是 节点版本管理器(NVM)指向的 Node 安装的组件不在计算机上。

因此,要解决这个问题,请转到 https://nodejs.org/dist/,然后下载所需发行版的 zip 文件。对我来说是 https://nodejs.org/dist/v14.15.4/node-v14.15.4-win-x64.zip

接下来,解压缩压缩文件并将其复制到 C:\Node\nvm\14.15.4\node_modules\npm目录或节点版本的目录中。

现在当您运行 npm install -g yarn时,它应该运行良好。

转到 https://nodejs.org/dist/latest-v10.x/下载压缩文件

在 C 中打开 zip 文件并复制 node _ module npm: Users foo AppData Roaming nvm v10.19.0 node _ module np

对于任何有这个问题的人来说。我可以说,在我的情况下,我发现问题发生时,我运行的安装程序从一个不同的分区到窗口已安装。

因此,当我使用来自 C: 分区的 nvm-setup.exe 重新安装时,所有安装的 npm 都能毫无问题地找到! !,不需要修改我的 win10环境变量。

我知道这看起来很疯狂,但是我认为这对于开发人员解决这个问题很有用,或者任何人现在需要帮助。

再见。

对于任何来寻找 错误: 无法找到模块‘ C: [您的项目路径] node _ module npm bin npm-cli. js’

尝试手动删除(右键单击-删除(发送到回收站))您的项目中的 node _ module 文件夹,然后运行 npm ci。这可能是因为问题实际上是项目没有正确安装,然后 npm ci 将不会完全删除这个,只是对它进行硬核处理。

对于我工作简单删除在项目文件夹 node_modules然后 npm install

我以前遇到过同样的问题,这是由系统 环境变数路径变量中额外的 Npm 路径设置引起的。只要删除它,只保留节点路径就足够了。 enter image description here

我尝试了所有这些解决方案,但不幸的是,我不断得到相同的错误,一次又一次,但我发现了一个解决方案,为我完美工程。所以,我想分享它也许有利于某人谁与我有相同的情况。我发现之所以一直出现这个错误,是因为我的用户名中有空间,所以为了解决这个问题,需要将 NVM 升级到最新版本,这样就解决了空间和特殊字符问题。步骤如下:

  1. 从这里下载最新版本的 https://sourceforge.net/projects/nvm-for-windows.mirror/
  2. 完成安装
  3. 重启你的机器