NPMでdevDependenciesを更新するにはどうすればよいですか?


155

npm updateただでパッケージを更新しているようだdependenciesが、何についてdevDependencies

現在、を実行devDependenciesしてインストールできますがnpm install .、これは動作しませんnpm update .

何か案は?


1
私はちょうど同じことに遭遇しました。私は間のこの非対称性に驚いていますnpm installnpm update。私は自分のnode_modulesディレクトリを削除してからnpm install再度実行することで回避しましたが、もっと良い方法があるはずです。
ジョーホワイト

7
この動作のバグレポートを開きました。何が起こるか見てみましょう。
ジョーホワイト

これは、NPM開発者が人々が開発npm link環境を実行するために使用すると考えていたためかもしれません。
ジュリアンナイト

回答:


157

ローカルモジュールに加えてpackage.jsonを更新するには、次を実行します。

npm update --save-dev

または、時間を節約するための同じコマンド

npm update -D

更新の完全な詳細、またはその問題に関するコマンドを表示できます。

npm help <cmd>

20
npm update -D私にとってはうまくいきませんでした、それは何も更新しませんでした。
AmazingDreams

27
質問が更新を保存する方法ではなく、devDependenciesを更新するpackage.json方法である場合、これが正しい答えとしてマークされるのはなぜnpm updateですか?
アレハンドロガルシアイグレシアス

@onalbi:ありません。これが問題を追跡するスレッドです。
Dan Dascalescu 2018

1
npm update --save-dev私にとってはうまくいきます。ノードv12.11.0とnpmの使用v6.11.3
maximedupre

55

npm-check-updates(https://www.npmjs.org/package/npm-check-updates)をインストールしてから、プロジェクトフォルダーに移動して実行します。

npm-check-updates

そして、package.jsonファイルの変更を更新して保存するには:

npm-check-updates -u

ncunpm-check-updatesタイピングを保存するよりも良いでしょう。
エドリック

@DimitriKopriwa -ddevDependenciesのみのオプションがあります
Michael Thompson

ncu --dep dev -u; NPMインストール
Kiruahxh


4

古いnpmバージョンを使用している場合は、問題がある可能性があります。したがって、他のコマンドを実行する前に:

sudo npm install npm -g

または(上記が機能しない場合):

sudo npm update npm -g

次に、コンソールを再起動します(変更を有効にするため)。今、あなたはあなたの新しいものnpm --versionをチェックし、それが最新であるかどうかを実行できます:

npm update

または(必要に応じて):

npm update --save-dev

残念ながら、これはnpm 5では機能しません。問題を追跡するスレッドは次のとおりです。
Dan Dascalescu 2018

2

更新を強制する1つの(遅い)方法は、node_modulesディレクトリを削除してから、もう一度実行npm installすることです。

これはnpm updateコマンドの既知のバグであり、の開発ブランチで修正されました。httpsnpm//github.com/isaacs/npm/pull/3863を参照して ください。

すぐにnpmの最新の安定バージョンに到達するはずです。


1
npm> v5の場合、package-lock.jsonこれを機能させるために削除する必要もあります。そうしないと、ロックファイルにリストされているバージョンのみがインストールされます。
karfau 2017年

また、これは更新さpackage.jsonれません。これが問題を追跡するスレッドです。
Dan Dascalescu

2

OPと同じ問題に遭遇し、解決策が見つからなかったため、devDependenciesを自動更新するGruntプラグインを作成することにしました。

それはGithubにあります。NPMが提供していない最高のツールにするために、私はいくつかの入力とコラボレーションを得たいです。

基本的には、シンプルなGruntタスクで古い開発依存関係を自動更新します。

https://github.com/pgilad/grunt-dev-update


2

私のために働いたのは、このような個々の開発依存関係をインストールすることです

npm install react-test-renderer@15.6.1 --save --only=dev

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.