为什么“npm install <directory>”会忽略devDependencies?

时间:2016-12-31 05:12:33

标签: javascript npm package.json

我在目录〜/ dirA:

中有以下package.json
p = hexNum.begin()

然后我cd到〜/ dirB并运行Bool XShmGetImage( register Display *dpy, Drawable d, XImage *image, int x, int y, unsigned long plane_mask); ,以便在dirB中创建node_modules目录。

问题是它没有安装devDependencies。我的NODE_ENV环境变量未设置。

我得到这个输出:

{
  "name": "dirA",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "vue": "^2.1.8"
  },
  "devDependencies": {
    "vue-loader": "^10.0.2"
  }
}

我甚至可以使用npm install ../dirA并继续忽略我在package.json中定义的devDependencies。

关于如何安装这些devDependencies的任何想法?

1 个答案:

答案 0 :(得分:0)

npm install <directory>

不会做你想做的事。根据文档here

  

npm install:

     

安装位于文件系统文件夹中的软件包。

同样正如控制台警告所示,npm安装需要在package.json存在的地方运行。 要从dirB安装到dirA, 这样做:

cd dirB

mkdir -p ../dirA/node_modules

npm install --prefix path_to_folder_in_dirA

选中此stackoverflow question