首页 > 解决方案 > 在 reactjs 中运行 npm install 时 node-gyp 构建错误

问题描述

在此处输入图像描述我采用了一个基于 reactjs 的前端项目 repo,当我运行npm i命令时,它给了我一大堆错误。

  1. 我尝试删除package.lock.json文件并再次运行命令
  2. 我试过做 npm update
  3. 我试过npm i --force&npm update --force 但同样的错误是给..

更新

我使用此命令强制清理缓存npm cache clean -f。之后我再次运行npm i..现在给出这个错误......

0 详细 cli [
0 详细 cli '/usr/local/Cellar/node/16.11.1/bin/node',
0 详细 cli '/usr/local/bin/npm',
0 详细 cli 'i'
0 详细 cli ]
1 使用 npm@8.1.2 的
信息 2 使用 node@v16.11.1的信息
3 计时 npm:load:whichnode 在 0 毫秒内完成
4 计时 config:load:defaults 在 2 毫秒内完成
5 计时 config:load:file:/usr/local/lib /node_modules/npm/npmrc 在 2 毫秒内完成
6 计时 config:load:builtin 在 2 毫秒内完成
7 计时 config:load:cli 在 2 毫秒内完成
8 计时 config:load:env 在 1 毫秒内完成
9 计时 config:load:file:/Users/ macbookpro/Desktop/private_project/xyzvara/to-let/.npmrc 1ms完成
10 时序配置:加载:项目在 1 毫秒内完成
11 时序配置:加载:文件:/Users/macbookpro/.npmrc 在 0 毫秒内完成
12 时序配置:加载:用户在 0 毫秒内完成
13 时序配置:加载:文件:/usr/local /etc/npmrc 在 0 毫秒内完成
14 计时 config:load:global在 0 毫秒内
完成 15 计时 config:load:validate 在 1 毫秒内完成
16 计时 config:load:credentials 在 1 毫秒内完成
17 计时 config:load:setEnvs 在 1 毫秒内完成
18 计时配置:load 在11 毫秒内
完成 19 计时 npm:load:configload 在11 毫秒内完成
20 计时 npm:load:setTitle 在
3 毫秒内完成 21 计时 npm:load:setupLog在 0 毫秒内完成
22 计时 config:load:flatten 在 4 毫秒内完成
23 计时 npm:load:cleanupLog 在 2 毫秒内完成
24 计时 npm:load:configScope 在 0毫秒内完成
25 计时 npm:load:projectScope 在 1 毫秒内完成
26 计时 npm:load 在22 毫秒内完成
27 计时树艺师:ctor 在 1 毫秒内完成
28 计时树艺师: ctor 在 0 毫秒内完成
29 定时 IdealTree:init 在
19 毫秒内完成 30 定时 IdealTree:userRequests 在 0 毫秒内完成
31 愚蠢的 IdealTree buildDeps
32 愚蠢的 fetch manifest @ckeditor/ckeditor5-build-classic@^25.0.0
33 http fetch GET 200 https:// registry.npmjs.org/@ckeditor%2fckeditor5-build-classic 2340ms(缓存未命中)
34 愚蠢的获取清单 @ckeditor/ckeditor5-react@^3.0.2
35 http 获取 GET 200https://registry.npmjs.org/@ckeditor%2fckeditor5-react 2069ms(缓存未命中)
36 傻取清单 react@^16.14.0
37 http fetch GET 200 https://registry.npmjs.org/react 905ms(缓存错过)
38 傻取清单 @hookform/devtools@^3.1.0
39 http fetch GET 200 https://registry.npmjs.org/@hookform%2fdevtools 1461ms(缓存未命中)
40 傻取清单 react@>=17.0.2
41 计时 IdealTree 在 6832 毫秒内完成
42 计时命令:安装在 6858 毫秒内完成
43 详细堆栈错误:无法解析依赖关系树
Arborist 的 43 个详细堆栈。[failPeerConflict] (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:1356:25)
Arborist 的 43 个详细堆栈。 [loadPeerSet] (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:1322:34)
43 异步 Arborist 的详细堆栈。[buildDepStep] (/ usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:930:11)
异步 Arborist.buildIdealTree 的 43 个详细堆栈(/usr/local/lib/node_modules /npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:216:7)
异步 Promise.all 的 43 个详细堆栈(索引 1)
43 异步 Arborist.reify 的详细堆栈(/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:149:5)
43 异步 Install.install 的详细堆栈(/usr /local/lib/node_modules/npm/lib/install.js:170:5)
44 详细 cwd /Users/macbookpro/Desktop/private_project/xyzvara/to-let
45 详细 Darwin 20.3.0
46 详细 argv "/usr/local /Cellar/node/16.11.1/bin/node" "/usr/local/bin/npm" "i"
47 详细节点 v16.11.1
48 详细 npm v8.1.2
49 错误代码 ERESOLVE
50 错误 ERESOLVE 无法解析依赖关系树
51 错误
52 错误 解析时:[1mtolet[22m@[1m0.1.0[22m
52 错误发现:[1mreact[22m@[1m16.14.0[22m[2m[22m
52 错误 [2mnode_modules/react[22m
52 错误 [1mreact[22m@”[1m^16.14.0[22m” 来自根项目
52 错误
52 错误无法解析依赖:
52 错误 [35mpeer[39m [1mreact[22m@” [1m>=17.0.2[22m" 来自 [1m@hookform/devtools[22m@[1m3.1.0[22m[2m[22m
52 错误] [2mnode_modules/@hookform/devtools[22m
52 错误[1m@hookform/devtools[ 22m@"[1m^3.1.0[22m" from root project
52 error
52 error 修复上游依赖冲突,或者
用--force重试52错误这个命令,或者--legacy-peer-deps
52错误接受一个不正确(并且可能被破坏)的依赖关系解析。
52 错误
52 错误 有关完整报告,请参阅 /Users/macbookpro/.npm/eresolve-report.txt。
53 详细退出 1

更新 2

我遇到了一个告诉网络错误的错误。因此,为了更快的加载速度,我安装yarn并运行yarn install. 奇怪的是,它安装了我使用时没有发生的节点模块npm。之后尝试运行项目它给出了 node-sass 错误。所以我做到了npm audit fix -f。但是,它并没有修复所有错误,但是如果我运行命令来启动项目,它现在正在运行而没有给出错误。很奇怪,我对这种行为没有任何完美的答案。

标签: node.jsreactjsnpmnpm-installnode-gyp

解决方案


更新 2

我遇到了一个告诉网络错误的错误。因此,为了更快的加载速度,我安装yarn并运行yarn install. 奇怪的是,它安装了我使用时没有发生的节点模块npm。之后尝试运行项目它给出了 node-sass 错误。所以我做到了npm audit fix -f。但是,它并没有修复所有错误,但是如果我运行命令来启动项目,它现在正在运行而没有给出错误。很奇怪,我对这种行为没有任何完美的答案。


推荐阅读