npm安装依赖和package.json版本不一致解决

npm或者cnpm 安装依赖,不会完全按照package.json中的版本号来,会有稍微的差异,这样的差异可能导致项目起不来,或者报错, 因为某些包只有特定的版本才能正常运行。

解决方案

  • npm提供了shrinkwrap命令来解决这个问题。 在项目所有依赖都安装完后,项目可正常稳定运行时,再运行如下命令:
 npm shrinkwrap
  • 执行后开启锁定package.json模式,自动生成生成npm-shrinkwrap.json文件,再运行如下命令:
npm  install

提示

cnpm install 不支持shrinkwrap模式,解决方法是把npm指向国内地址

npm config set registry https://registry.npm.taobao.org
  • 配置后可通过下面方式来验证是否成功
npm config get registry
// 或
npm info express

实施过程

在这里插入图片描述
我执行后版本依旧不一致,这是因为我已经下载了更高版本的依赖库

删除node_modules

  • 安装npm包–rimraf
npm install rimraf -g
  • 在所属文件夹下使用cmd指令下,进入所需删除的node_modules文件夹的位置,再输入指令
rimraf node_modules

然后重新执行npm install命令

猜你喜欢

转载自blog.csdn.net/gao511147456/article/details/129440097
今日推荐