使用nvm管理的node,学习react时,npx安装报错:npm ERR: Could not install from “Files\nodejs\node_cache\_npx\“

react框架,npx create-react-app my-app显示无法找到cache缓存中的package.json文件进行安装解决方案

因为自己需要,笔电需要安装两个版本的node,所以用了nvm来管理node的版本。今天抽空开始学习react的框架,刚起步,就报错了orz
出错如下:
报错如图
日志内容如下:

0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli   'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'G:\\Users\\CXM\\AppData\\Roaming\\nvm\\v14.16.0\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'install',
1 verbose cli   'create-react-app@latest',
1 verbose cli   '--global',
1 verbose cli   '--prefix',
1 verbose cli   'G:\\Program',
1 verbose cli   'Files\\nodejs\\node_cache\\_npx\\20344',
1 verbose cli   '--loglevel',
1 verbose cli   'error',
1 verbose cli   '--json'
1 verbose cli ]
2 info using npm@6.14.11
3 info using node@v14.16.0
4 verbose npm-session 63f496c656981e09
5 silly install loadCurrentTree
6 silly install readGlobalPackageData
7 silly fetchPackageMetaData error for file:Files\nodejs\node_cache\_npx\20344 Could not install from "Files\nodejs\node_cache\_npx\20344" as it does not contain a package.json file.
8 http fetch GET 200 https://registry.npmjs.org/create-react-app 878ms
9 http fetch GET 200 https://registry.npmjs.org/create-react-app/-/create-react-app-5.0.0.tgz 238ms
10 silly pacote tag manifest for create-react-app@latest fetched in 1131ms
11 timing stage:rollbackFailedOptional Completed in 0ms
12 timing stage:runTopLevelLifecycles Completed in 1139ms
13 verbose stack Error: ENOENT: no such file or directory, open 'D:\Self-Study\React\code\test\Files\nodejs\node_cache\_npx\20344\package.json'
14 verbose cwd D:\Self-Study\React\code\test
15 verbose Windows_NT 10.0.22000
16 verbose argv "C:\\Program Files\\nodejs\\node.exe" "G:\\Users\\CXM\\AppData\\Roaming\\nvm\\v14.16.0\\node_modules\\npm\\bin\\npm-cli.js" "install" "create-react-app@latest" "--global" "--prefix" "G:\\Program" "Files\\nodejs\\node_cache\\_npx\\20344" "--loglevel" "error" "--json"
17 verbose node v14.16.0
18 verbose npm  v6.14.11
19 error code ENOLOCAL
20 error Could not install from "Files\nodejs\node_cache\_npx\20344" as it does not contain a package.json file.
21 verbose exit [ 1, true ]

控制台的报错和日志都表示关键字眼Files\nodejs\node_cache\_npx\20344没有数据安装。
我的电脑没有这个文件目录,网上查了一下,是说我的npm路径有空白字符所影响。
然后我查了一下我的npm的cache路径。

// 查看当前的npm配置的cache路径
npm config get cache
// 能够显示当前的npm的cache完整的路径:
G:\Program Files\nodejs\node_cache

突然想起我以前安装过node没卸载,就安装了nvm,也许要切换到自己的这个nvm对应的node版本的下才可能成功。
再根据上面的报错日志显示是从C盘下,而不是从G盘下读取的node.exe。
之后我就在系统环境变量中找到的nvm的路径
最后找到C盘下的node.exe对应的路径修改终于解决了这个问题。

完整步骤如下:

一、高级系统配置–>环境变量–>管理员的系统变量–>Path变量【我看到了以下两个路径】
在这里插入图片描述

这里看到配置了以上两个路径,第一个是nvm的路径,但是我们要找到nvm切换版本之后,生成的nodejs的路径,我检查了一下"C:\Program Files\nodejs"这个路径,发现它就是nvm生成的一个快捷方式【我刚才切node的版本到14.16.0,对应的目录正确】,如图所示:
在这里插入图片描述
在这里插入图片描述
可以确定第二个路径是接下来要配置的npm对应的配置config路径,即C:\Program Files\nodejs

二、使用命令行查看,并修改本地的npm的config文件的配置路径

// cmd命令行窗口,输入以下命令行,回车,能编辑 npm的config文件:.npmrc【会弹窗该文件出来】
npm config edit

在这里插入图片描述

// 找到以下两行 这是我原来配置的npm的路径目录
cache=G:\Program Files\nodejs\node_cache
prefix=G:\Program Files\nodejs\node_global

// 我只需把G盘改成C盘之后保存就可以,看到这里的人,要找到自己的nvm目录路径的切换才可以,如下:
// 修改,保存,关闭.npmrc即可
cache=C:\Program Files\nodejs\node_cache
prefix=C:\Program Files\nodejs\node_global

最后,执行安装npx create-react-app my-app命令成功。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值