2016-12-31 71 views
0

,我有以下的package.json在目錄〜/迪拉:爲什麼「npm install <directory>」忽略devDependencies?

{ 
    "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" 
    } 
} 

然後我cd到〜/ DIRB和運行npm install ../dirA,使node_modules目錄獲取DIRB創建。

問題是它沒有安裝devDependencies。我的NODE_ENV環境變量未設置。

我只是得到這樣的輸出:

[~/dirB]$ npm install ../dirA 
/home/tbeadle/dirB 
`-- [email protected] 
    `-- [email protected] 

npm WARN enoent ENOENT: no such file or directory, open '/home/tbeadle/dirB/package.json' 
npm WARN dirB No description 
npm WARN dirB No repository field. 
npm WARN dirB No README data 
npm WARN dirB No license field. 

我甚至可以用npm install --only=dev ../dirB並繼續無視我在的package.json定義的devDependencies。

關於如何獲得這些devDependencies安裝的任何想法?

+0

,如果你正在爲生產devDependencies不會安裝,看看在[自述](HTTPS:/ /github.com/npm/npm/blob/2e3776bf5676bc24fec6239a3420f377fe98acde/doc/files/package.json.md#devdependencies)編輯:nah文檔吸吮,檢查出[此問題](http://stackoverflow.com/questions/18875674 /最新最差之間依賴性-devdependencies和 - peerdependencies) – wizebin

回答

0
npm install <directory> 

不會做你正在做的事情。根據該文檔here

NPM安裝:

安裝是坐在一個文件夾中的文件系統中的包。

另外,正如控制檯警告的建議,npm安裝需要在package.json存在的地方運行。 從DIRB安裝到迪拉, 做到這一點:

cd dirB 

mkdir -p ../dirA/node_modules 

npm install --prefix path_to_folder_in_dirA 

入住這stackoverflow question