2016-09-20 19 views
0

package.jsonのNPMインストールを実行すると、NPMは常に特定のパッケージの新しいバージョンを自動的に選択します。NPMの特定のバージョンのインストールpackage.json

私はそれらのパッケージの特定のバージョンを策定しましたが、それはそうです。 NPMに特定のバージョンのみを強制的に適用させるにはどうすればよいですか?

マイdependencies.json:

"dependencies": { 
"@angular/common": "2.0.0-rc.5", 
"@angular/compiler": "2.0.0-rc.5", 
"@angular/core": "2.0.0-rc.5", 
"@angular/forms": "2.0.0-rc.5", 
"@angular/http": "2.0.0-rc.5", 
"@angular/platform-browser": "2.0.0-rc.5", 
"@angular/platform-browser-dynamic": "2.0.0-rc.5", 
"@angular/router": "3.0.0-rc.1", 
"@angular/upgrade": "2.0.0-rc.5", 
"angular2-meteor": "0.7.0-beta.1", 

"angular2-material/core": "2.0.0-alpha.7-9", 
"angular2-material/grid-list": "2.0.0-alpha.7-9", 
"angular2-material/card": "2.0.0-alpha.7-9", 
"angular2-material/button": "2.0.0-alpha.7-9", 
"angular2-material/icon": "2.0.0-alpha.7-9", 
"angular2-material/checkbox": "2.0.0-alpha.7-9", 
"angular2-material/sidenav": "2.0.0-alpha.7-9", 
"angular2-material/menu": "2.0.0-alpha.7-9", 
"angular2-material/input": "2.0.0-alpha.7-9", 
"angular2-material/toolbar": "2.0.0-alpha.7-9", 
"angular2-material/slider": "2.0.0-alpha.7-9", 

"angular2-meteor-polyfills": "0.1.1", 
"bcrypt": "0.8.7", 
"client": "0.0.1", 
"hammerjs": "^2.0.8", 
"meteor-node-stubs": "~0.2.0", 
"reflect-metadata": "0.1.8", 
"rxjs": "5.0.0-beta.11", 
"tether": "1.3.6", 
"zone.js": "0.6.17" 
} 

私は(node_modules-フォルダを除去した後)インストールNPMを実行すると、NPMは、私は特定のものを必要としていてもangular2と角度材料の新しいバージョンをインストールします。

結果は、インストール後:

答えて

0

NPMは、あなただけのパッケージの特定のバージョンを取るためにNPMを強制することができ亭、同様に、解像度のオプションがありません。 を実行すると、がインストールされ、package.jsonファイル内のパッケージだけでなく、これらすべてのパッケージの依存関係もチェックされ、インストールされます。パッケージによっては、package.jsonで指定されたものよりも新しいバージョンのangular2が必要な場合は、新しいバージョンがインストールされます。

package.jsonのバージョンが^を使用して定義されている場合は、たとえば"babel-core": "^ 6.17.0"のように、注意が必要です。 完全に動作している環境があるかもしれませんが、何らかの理由でノードモジュールを再インストールまたは更新すると、新しいバージョンのパッケージではより新しいバージョンのangular2が必要になることがあります。

このケースでは、package.jsonファイル内のどのパッケージが、指定されたものよりも新しいバージョンのangular2とangular-materialを依存関係として必要としているかをチェックします。

関連する問題