2013-11-15 21 views
7

私はsqlite3パッケージに依存しています。npm package.json依存関係にオプションを追加できますか?

デフォルトでは、sqlite3パッケージはインストール時にsqlite3エンジンのパッケージ済みバージョンをダウンロードして使用します。 sqlite3の拡張を使用しているときに、それをインストールするオプションがあるので、これは時々問題になることができます。

npm install --build-from-source --sqlite=/path/to/sqlite sqlite3 

「からソース・--build」と「--sqlite」の両方によって処理されているオプションですsqlite3パッケージ。

ここで、これらのオプションに依存関係をインストールするようにpackage.jsonに指示するにはどうすればよいですか?

"dependencies": { 
    "sqlite3": "*" 
} 

は、明らかに私は

npm install sqlite3 

に相当を取得するが、私はsqlite3のパッケージ用のソース・--buildと--sqliteオプションを強制する方法を見つけることができません

答えて

6

代わりに、scriptsメンバを使用して、プレインストールまたはポストインストールフックの下でインストールスクリプトを設定します。

"scripts": { 
    "preinstall": "npm install --build-from-source --sqlite=/path/to/sqlite sqlite3" 
}, 
+0

"npm shrinkwrap"はクラッシュします。なぜなら、sqlite3はnpmによって依存性とみなされないためです。開発中に仕事をするので受け入れられます。 –

+0

注: "npm shrinkwrap"は、依存関係を依存関係に追加することによって、騙される可能性があります。モジュールはあらかじめインストールされており、依存関係はありません:再インストールしません –

関連する問題