有没有一种简单的方法来重新安装我的应用程序所依赖的所有包(即它们在我的应用程序 node_modules 文件夹中)?
10 回答
我能看到的最简单的方法是删除node_modules
文件夹并执行npm install
.
正确的方法是执行npm update
。这是一个非常强大的命令,它会更新丢失的软件包并检查是否可以使用已安装的较新版本的软件包。
阅读NPM 简介以了解您可以使用 npm 做什么。
大多数时候我使用以下命令来实现所有节点模块的完全重新安装(确保您在项目文件夹中)。
rm -rf node_modules && npm install
您也可以npm cache clean
在删除node_modules
文件夹后运行,以确保没有任何缓存的依赖项。
npm
更新了 CLI 命令install
并添加了--force
标志。
npm install --force
即使磁盘上存在本地副本, (or ) 参数也会强制获取远程--force
资源-f
。npm
你可以用一个简单的命令来做到这一点:
npm ci
这是文档的摘录npm ci
:
简而言之,使用
npm install
和之间的主要区别npm ci
是:
- 该项目必须具有现有的
package-lock.json
或npm-shrinkwrap.json
.- 如果包锁中的依赖项与 中的依赖项不匹配
package.json
,npm ci
将退出并出现错误,而不是更新包锁。npm ci
一次只能安装整个项目:无法使用此命令添加单个依赖项。- 如果 a
node_modules
已经存在,它将在npm ci
开始安装之前自动删除。- 它永远不会写入
package.json
或任何包锁:安装基本上被冻结。
您可以使用 npm 中的重新安装模块。
安装后,可以使用以下命令:
reinstall
与手动删除node_modules
文件夹和制作的唯一区别npm install
是该命令会自动清除 npm 的缓存。因此,您可以在一个命令中执行三个步骤。
upd: npx reinstall
是一种无需全局安装包即可运行此命令的方法(仅适用于 npm5+)
从 npm cli v6.5.0 开始,您可以使用 backronym:
npm clean-install
资料来源:
https://github.com/npm/cli/releases/tag/v6.5.0 https://github.com/npm/cli/commit/fc1a8d185fc678cdf3784d9df9eef9094e0b2dec
删除node_module并通过命令重新安装
rm -rf node_modules && npm i
对于 Windows,您可以使用
(if exist node_modules rmdir node_modules /q /s) && npm install
删除node_modules
目录然后执行npm install
。安装前删除可确保重新安装所有软件包。
按照此步骤重新安装节点模块并更新它们
即使 node_modules 文件夹不存在也可以工作。现在同步执行以下命令。您也可以使用“npm update”,但我认为这是首选方式
npm outdated // not necessary to run this command, but this will show outdated dependencies
npm install -g npm-check-updates // to install the "ncu" package
ncu -u --packageFile=package.json // to update dependencies version in package.json...don't run this command if you don't need to update the version
npm install: will install dependencies in your package.json file.
如果您对 package.json 文件中的依赖项版本没问题,则无需执行这些步骤,只需运行
npm install