当前位置:网站首页>npm install 编译时报“Cannot read properties of null (reading ‘pickAlgorithm‘)“
npm install 编译时报“Cannot read properties of null (reading ‘pickAlgorithm‘)“
2022-08-02 16:37:00 【m0_67393157】
先看报错:
先说下网上大多数的解决方案:
方案一:
重新安装node解决
方案二:
删了node models重新下
或者直接下载CNPM(淘宝镜像)进行安装 CNPM安装办法
npm install -g cnpm -registry=https://registry.npm.taobao.org
查看cnpm是否真安装成功 cnpm -v
方案三:
清除缓存npm cache clear --force之后再重新安装依赖npm install
我的解决方案
基本上都是以上这三种方法,先说下我的项目为什么会出现这种报错,项目原先用的node13和14的版本,然后我们将node 升到16后发现原先的所有项目都编译不了了,全报这种错误。
测试的时候遇到的假象,当将node13升到16的时候,重新编译,编译是正常的,但是后来发现当node_modules 删除后重新编译就会出现上面的错,原因可能是我们node13编译的node_modules没有删除,项目一直读的node13编译的东西,给我们以为我们安装的node16是成功的。
遇到这类问题,牵扯到node升级,以上的解决方案并没能解绝。
最后解决方案,找到package-lock.json文件。将图中圈红的内容保留,其余的全部删除,然后npm install重新编译,package-lock.json会生成一份新的文件。最后编译成功。得以解决。
总结:node13生成的 package-lock.json 在结构上可能与node16的package-lock.json 结构上进行了大变动。所以我们用node13生成的package-lock.json让node16去解析,肯定是解析不了的。所有我们将内容删掉,node16给我们生成了一份新的内容。理论上说不会影响我们的项目,因为我们用的各种包的版本是在package.json内定义的,生成的package-lock.json内的版本依赖也是参照的package.json生成出来的,并不影响整体框架的使用。
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
猜你喜欢
随机推荐
nacos简单使用
Arduino 硬件编程语言基础学习入门
智能合约安全——delegatecall (1)
持续集成(五)Jenkins配置父子job
DSP-ADAU1452参考音设置方法
实时数仓架构演进及选型
Alibaba最新神作——1015页分布式全栈手册太香了
代码随想录笔记_哈希_61扑克牌中的顺子
QACTION_QA百科
oracle 和mysql 语句结果不一致问题
jar包应用的简单启停脚本
乌总统解除乌克兰国家安全局信息和情报分析部负责人职务
JZ10 斐波那契数列
开始使用 NVIDIA Jetson Orin 上的深度学习加速器
Mysql——分组统计
时间戳格式化「建议收藏」
一文搞懂│php 中的 DI 依赖注入
Red and blue against experience sharing: CS from kill posture
排查生产环境:MySQLTransactionRollbackException数据库死锁
【二】TS基本类型






![链表的归并排序[自顶向下分治 || 自低向上合并]](/img/7b/81c5d876567a2017df64e87ee3b478.png)


