我有npm v 1.2.32
当我跑步时: $ npm install mongo-migrate
它不会安装mongodb,这是一个devDependency。
我做错了什么?
答案 0 :(得分:82)
虽然与此问题没有直接关系,但有些人可能会感兴趣的是,如果环境变量NODE_ENV
设置为production
,则执行{{{n}时npm将忽略devDependencies
1}}。
答案 1 :(得分:17)
从NPM存储库安装软件包时,也不会自动安装dev依赖项(因为不需要这些依赖项来使主程序包正常工作)。
您还需要明确指示npm安装dev依赖项:
npm install mongo-migrate --dev
<强>更新强>
不推荐使用--dev
命令。
npm WARN安装不推荐使用
--dev
选项。请改用--only=dev
。
npm install mongo-migrate --only=dev
答案 2 :(得分:2)
npm i <package> # without devDependencies
cd node_modules/<package>
npm i # include devDependencies
&#34; npm i --dev&#34;是不正确的,因为它以递归方式安装devDependencies。
答案 3 :(得分:1)
我只是遇到了同样的问题,只是因为我在package.json中定义了两次devDependencies。
我用手动拼写错误编写了它,在故障排除期间运行了一些--save-dev安装,这使它显示两次。顺便提一下,如果你在package.json中包含两次“devDependencies”,那么npm将不会安装它们。
答案 4 :(得分:0)
即使使用NODE_ENV = production,我偶尔也要安装devDependencies。
我通常使用此解决方法。
// temporarily change NODE_ENV to other value...
NODE_ENV=development npm install