简体   繁体   English

无法使用 node.js 安装 npm

[英]unable to install npm with node.js

I'm trying to install node.js and npm. Although I was successfully able to install node.js version 16.13.0, I'm not able to use npm, despite selecting it as a package that must be installed along with node.js. After the installation, I ran npm --version but I got this error:我正在尝试安装 node.js 和 npm。虽然我能够成功安装 node.js 版本 16.13.0,但我无法使用 npm,尽管选择它作为 package 必须与 881361498 安装后一起安装,我运行了npm --version但出现了这个错误:

Error: Cannot find module 'node-fetch-npm'
Require stack:
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\npm-registry-fetch\node_modules\make-fetch-happen\index.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\npm-registry-fetch\index.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\pacote\lib\remote.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\pacote\lib\git.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\pacote\lib\fetcher.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\pacote\lib\index.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\lib\utils\update-notifier.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\lib\cli.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\bin\npm-cli.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (C:\Users\ap202\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\npm-registry-fetch\node_modules\make-fetch-happen\index.js:6:15)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
Error: Cannot find module 'node-fetch-npm'
Require stack:
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\npm-registry-fetch\node_modules\make-fetch-happen\index.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\npm-registry-fetch\index.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\pacote\lib\remote.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\pacote\lib\git.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\pacote\lib\fetcher.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\pacote\lib\index.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\lib\utils\update-notifier.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\lib\cli.js
- C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\bin\npm-cli.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (C:\Users\myaccount\AppData\Roaming\nvm\v11.0.0\node_modules\npm\node_modules\npm-registry-fetch\node_modules\make-fetch-happen\index.js:6:15)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)

I have looked at multiple questions on StackOverflow and other online resources but nothing talks about the issue I'm facing.我查看了关于 StackOverflow 和其他在线资源的多个问题,但没有提及我面临的问题。

Try installing a lower version of npm or reinstall.尝试安装较低版本的 npm 或重新安装。

https://github.com/coala/docker-coala-base/issues/182 https://github.com/coala/docker-coala-base/issues/182

My problem is because there is a conflict with npm binary in my system while trying to run vue create project.我的问题是因为在尝试运行vue create project 时我的系统中存在与npm二进制文件的冲突。


In my case, I have two npm binaries.就我而言,我有两个npm二进制文件。 One in AppData\Roaming and one in a custom path in F:\Programs\nodejs\ .一个在AppData\Roaming中,一个在F:\Programs\nodejs\中的自定义路径中。 The latter binary produces the error., but not the AppData one.后一个二进制文件会产生错误,但 AppData 不会。

My node.exe binary is living in the F:\ drive.我的node.exe二进制文件位于F:\驱动器中。

Installing node-fetch-npm (deprecated) and node-fetch via npm i installs the package in AppData\Roaming , but it suppose to be installed in the F:\ drive.通过npm i安装node-fetch-npm (已弃用)和node-fetch我将 package 安装在AppData\Roaming中,但它应该安装在F:\驱动器中。

So, I copied both package folders from AppData\Roaming into the F:\ drive one.因此,我将AppData\Roaming中的两个 package 文件夹都复制到了F:\驱动器中。

Running vue create is now fixed.运行vue create现在已修复。

Gracefully uninstalled the unused package in the AppData folder by npm uninstall -g node-fetch node-fetch-npm .通过npm uninstall -g node-fetch node-fetch-npm优雅地卸载了 AppData 文件夹中未使用的 package 。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM