2016-08-16 38 views
1

"msnodesqlv8": "0.2.3" npmパッケージを使用してWindows上でMSSQLスクリプトを実行しますが、Macではこのエラーのために他のパッケージをすべてインストールできません:特定のパッケージがWindows上にのみインストールされるように、package.jsonを設定するにはどうすればよいですか?

Macbook-Pro jeremy$ npm install 
npm ERR! Darwin 15.5.0 
npm ERR! argv "/Users/jeremy/.nvm/versions/node/v6.1.0/bin/node" "/Users/jeremy/.nvm/versions/node/v6.1.0/bin/npm" "i" 
npm ERR! node v6.1.0 
npm ERR! npm v3.8.6 
npm ERR! code EBADPLATFORM 

npm ERR! notsup Not compatible with your operating system or architecture: [email protected] 
npm ERR! notsup Valid OS: win32 
npm ERR! notsup Valid Arch: any 
npm ERR! notsup Actual OS: darwin 
npm ERR! notsup Actual Arch: x64 

npm ERR! Please include the following file with any support request: 
npm ERR!  /Users/jeremy/code/lyfeboat/mitchell-sql-feathers/npm-debug.log 

私のpackage.jsonを、このパッケージがWindows以外のシステムでは無視されるように設定する方法はありますか?

+0

回避策は、package.jsonからそのパッケージを削除し、保存し、することはもちろんですnpm installを実行します。理想的には、私はpackage.jsonを修正できるので、この回避策は必要ないでしょう。 –

答えて

1

もっと良い方法があるかどうかはわかりませんが、package.jsonのoptionalDependenciesプロパティを使用して目的の動作を得ることができました。ここで

https://docs.npmjs.com/files/package.json#optionaldependencies

私が使用される形式です:予想通り

... 
"optionalDependencies": { 
    "msnodesqlv8": "0.2.3" 
}, 
... 

出力:

Macbook-Pro jeremy$ npm install 
... 
*installed other packages normally* 
... 
npm WARN optional Skipping failed optional dependency //msnodesqlv8: 
npm WARN notsup Not compatible with your operating system or architecture: [email protected] 
関連する問題