如何使用 npm 只安装“ devDependency”

我试图只安装 package.json 文件中列出的“ devDependency”。但是以下命令都没有像我期望的那样工作。以下所有命令都安装了我不想要的生产依赖项。

npm install --dev
npm install --only=dev
npm install --only-dev

我想不出还有什么方法可以告诉 npm 单独安装 devDependency

152338 次浏览

检查 安装 NPM 文档:

有了 --production标志(或者当 NODE_ENV环境变量设置为生产时) ,npm 将不会安装 devDependencies中列出的模块。

无论 NODE _ ENV 如何,--only={prod[uction]|dev[elopment]}参数将导致只安装 devDependency 或只安装非 devDependency。

你试过以下方法吗?

npm install --only=dev
npm install thePackageName --save-dev

这对我来说没问题。

npm i -D

一个可选的简短版本。

运行 npm install,它将在 依赖性’或 依赖关系下安装所有依赖项。

对于在 package.json 中安装和保存包作为开发依赖项, 选项 npm install package_name --save-dev或传递选项 -D

为了安装 依赖性下的所有软件包, npm install --only=dev

对于在 package.json 中将包作为 prod 或仅作为依赖项安装和保存, 或通过选项 -Pnpm install package_name

为了安装 依赖关系刺依赖下的所有软件包, 设定环境变量为 NODE_ENV=production或使用命令 NODE_ENV=production npm installnpm install --only=prod传递

不用像 npm install那样在 npm 命令中使用 install,你只需要像 npm i那样使用 i即可,只是不需要安装。

参考文献

不再支持—— only = dev 选项

从 npm 版本7.10.0开始,您可以省略某些类型的依赖项,但是您不能再省略“ the”依赖项(production)。这就是为什么这个问题再也没有解决办法了。

在最新版本的 npm 中,没有办法只安装开发人员依赖项。但是有一个你可以做的变通方法。

您可以创建另一个 package _ dev. json 文件,其中只能放置 devDependency 并保持依赖项为空。

比起只安装开发人员依赖项,您可以执行下面的脚本

cp package.json temp.json && \
cp package_dev.json package.json && \
npm install && \
rm -rf package.json && \
cp temp.json package.json && \
rm -rf temp.json

我也有类似的需求,需要创建一个 gitHub 操作,并且只需要安装开发依赖项。以上的变通方法对我来说非常有效。

这种方法的唯一缺点是需要注意更新 package _ dev。每当 package.json 文件中有一个更新时,json 都会发生。