15

我有 npm v 1.2.32

当我运行时: $npm install mongo-migrate

它不安装作为 devDependency 的 mongodb。

我究竟做错了什么?

4

5 回答 5

85

虽然与这个问题没有直接关系,但有些人可能会感兴趣的是,如果环境变量NODE_ENV设置为production,npm 将devDependencies在执行时忽略npm install

于 2014-11-27T21:47:24.257 回答
19

当您从 NPM 存储库安装包时,开发依赖项也不会自动安装(因为这些依赖项不是使主包正常工作所必需的)。

您还需要明确指示 npm 安装开发依赖项:

npm install mongo-migrate --dev

更新

--dev命令已被弃用。

npm WARN install--dev不推荐使用该选项。改为使用--only=dev

npm install mongo-migrate --only=dev
于 2013-06-29T06:54:12.513 回答
2

npm i <package> # without devDependencies cd node_modules/<package> npm i # include devDependencies

“npm i --dev”不正确,因为它递归安装 devDependencies。

于 2015-09-15T09:01:53.690 回答
1

我只是遇到了同样的问题,只是因为我在 package.json 中定义了两次 devDependencies。

我用手动拼写错误的方式编写了它,并且在故障排除期间运行了一些 --save-dev 安装,这使它出现了两次。顺便说一句,如果您在 package.json 中包含两次“devDependencies”,npm 将不会安装它们。

于 2016-03-12T17:54:09.360 回答
0

即使使用 NODE_ENV=production,我有时也不得不安装 devDependencies。

我通常使用这种解决方法。

// temporarily change NODE_ENV to other value...
NODE_ENV=development npm install
于 2017-09-13T11:23:17.767 回答