ノードjsでnpmモジュールをアンインストールする方法は?


1130

よく知られているように、任意のnpmモジュールは、次の単純なコマンドを実行してインストールできますnpm install <module_name>

使用しなくなったモジュールをいくつかインストールしましたが、それらを取り除きたいだけです。これについていくつか質問があります。

  • ルートからモジュールをアンインストールするためのコマンドやプロセス(などnpm uninstall <module_name>)はありますか、それとも単にモジュールファイルを削除するだけですか?

  • 未使用のモジュールを保持するとどうなりますか?


2
あなたはすべてのNPMモジュールを削除したい場合は、ここに行く: stackoverflow.com/questions/9283472/...
ダニエル・

回答:


1729

コマンドは単純です npm uninstall <name>

Node.jsドキュメントhttps://npmjs.org/doc/には、npmで知っておく必要があるすべてのコマンドがあります。

ローカルインストールはnode_modules/、アプリケーションのディレクトリにあります。参照されていないモジュールがそこに残っている場合、これはアプリケーションに影響しません。

ただし、グローバルパッケージを削除すると、それを参照しているアプリケーションがクラッシュします。

さまざまなオプションがあります。

npm uninstall <name>モジュールを削除しますがnode_modules、更新しませんpackage.json

npm uninstall <name> --saveからも削除dependenciesしますpackage.json

npm uninstall <name> --save-devからも削除devDependenciesしますpackage.json

npm uninstall -g <name> --save また、グローバルに削除します


19
npm -g ls | grep -v 'npm@' | awk '/@/ {print $2}' | awk -F@ '{print $1}' | xargs npm -g rmゴバリーにインストールされたすべてのモジュールをアンインストールするには、これを試してください。Windowsを使用している場合は、Cygwinまたはgitをインストールして実行する必要があります
Nur Rony

1
すべてのグローバルモジュールをアンインストールする場合: stackoverflow.com/questions/5926672/… そして、node_modulesフォルダーを削除しますすべてのローカルモジュールをアンインストールする場合は、ローカルnode_modulesフォルダーを削除します
DanteTheSmith

1
上記のすべてのコマンドを使用してcypress@3.1.4を削除しようとしましたが、まだそこにあります
Steve Staple

20
npm uninstall <name> now removes the module from both package.json`およびnode_modules
philip oghenerobo balogun

1
2019年の時点で、ノード13(10以上もあると思います)はpackage.jsonからパッケージを削除しますnpm uninstall <name>
Maksim Shamihulau

86

動作しない場合は、npm uninstall <module_name>と入力してグローバルに試してください-g

たぶん、あなたはスーパーユーザー/管理者としてそれを行う必要があるだけですsudo npm uninstall <module_name>


4
-gがある場合に役立ちますnpm WARN uninstall
Lorem Ipsum Dolor 2015

49

この質問に完全に答えるには、2つの方法があります:(たとえば、インストールされているモジュールをmodule1として呼び出します)

  1. package.json 変更せずに module1を削除するには:

    npm uninstall module1

  2. package.json 変更してmodule1を削除し、package.jsonの依存関係から削除するには:

    npm uninstall --save module1

注:上記のコマンドを簡略化するには、-- saveの代わりに-Sを使用アンインストールの代わりにremovermrununlinkを使用できます。


完全を期すために、グローバルまたはローカルの依存関係を削除したい場合は注意が必要です。グローバルの場合は、上記で-gを使用してください!また、すべてのグローバルモジュールをアンインストールする場合: stackoverflow.com/questions/5926672/… そして、node_modulesフォルダーを削除しますすべてのローカルモジュールをアンインストールする場合、ローカルのnode_modulesフォルダーを削除します
DanteTheSmith

28

私はデフォルトでスタイラスを自分のホームディレクトリにインストールするだけなので、それをnpm uninstall stylusデタッチするのに使用するか、試しnpm rm <package_name>てみることができます。


17

ノードモジュールをアンインストールするには:

npm uninstall <module_name>  

これにより、node_modulesからモジュールが削除されますが、package.jsonからは削除されません。したがって、npm installを再度実行すると、モジュールがダウンロードされます。

したがって、package.jsonからモジュールを削除するには、次のコマンドを使用します。

npm uninstall <module_name> --save  

これにより、package.jsonから依存関係も削除されます。

また、グローバルモジュールをアンインストールする場合は、次のコマンドを使用できます。

npm -g uninstall <module_name> --save 

これにより、依存関係がグローバルに削除されます。


7

パッケージをnode_modules/一括で削除するにはpackage.json、からパッケージを削除して保存npm pruneし、ターミナルで実行することもできます。

これにより、ファイルシステムに存在するが、使用/宣言されていないパッケージが削除されpackage.jsonます。

PS>これは、「パスの長さの制限を超えた」ために一部のファイルを削除できないという問題が頻繁に発生する可能性があるため、Windowsで特に役立ちます。


6

一見明白に見えても、私はこれを難しい方法で見つけました。

最初npm uninstall module-nameに、スクリプトの単純なforループで実行されているnode_modulesディレクトリをループしてみました。フルパスを呼び出しても機能しないことがわかりました。

npm uninstall module-name

働いていたが、

npm uninstall /full/path/to/node_modules/module-name 

動作していませんでした。


6

省略形として以下を実行することもできます。

npm un packageName または npm rm packageName

注:-gグローバルパッケージをアンインストールするには、コマンドの最後に追加します。


4

Windowsユーザーの場合-一度にインストールしたすべてのノードモジュールを削除する場合:

  • PowerShellを開く
  • node_modulesフォルダー内に移動(cd node_modules)
  • このコマンドを実行します-"npm uninstall(Get-ChildItem).Name"

すべてのモジュールがアンインストールされます。


4

時々 npm uninstall -g packageName動作しません。

この場合、パッケージを手動で削除できます。

Macでは、フォルダに移動し/usr/local/lib/node_modulesて、必要なパッケージが含まれているフォルダを削除します。それでおしまい。このコマンドでグローバルにインストールされたパッケージのリストを確認してくださいnpm list -g --depth=0


気になるのは、「npm uninstall -g packageName」が機能しない場合があるのはなぜですか。
ムウィザ

それは巨大なバグのあるコードなので...すべてのOSバージョンに適応するのは本当に難しいです。それが理由だと思います
Nastro

3

npm 5を更新します。

以下のようNPM 5.0.0 --saveオプションはもはや必要とされているので、インストール/アンインストールモジュールが追加/、デフォルトでは、依存関係として削除されません。

走る

npm uninstall <package>

例えば:

npm uninstall mongodb

また、node_modulesフォルダーとpackage.jsonファイルからモジュールを削除します


1
真; 古いデフォルトの動作(package.jsonをそのままにする)が必要な場合は、-no
Marcus

2

uninstallインストールで使用したコマンドと同じコマンドを使用しようとしたとき、このオプションは機能しませんでした(@latestディレクティブでインストールしていたため)。

たとえば、次のようなパッケージをインストールしました。

npm install  @ngtools/webpack@latest

そして、それをアンインストールしたかったので、同じコマンド(@latestを含む)を使用しました

npm uninstall  @ngtools/webpack@latest

上記のアンインストールが機能しなかったので、削除する必要があります@latest&それからうまくいきました

npm uninstall  @ngtools/webpack

これが役に立てば幸い


1
# login as root (might be required depending on install)
su - 
# list all global packages
npm ls -g --depth=0
# list all local (project) packages
npm ls -p --depth=0
# remove all global packages
npm ls -g --depth=0 | awk -F/ '/node_modules/ && !/\/npm$/ {print $NF}' | xargs npm -g rm
# remove all local packges
npm ls -p --depth=0 | awk -F/ '/node_modules/ && !/\/npm$/ {print $NF}' | xargs npm -p rm

# NOTE (optional): to use node with sudo you can add the bins to /usr/bin
# NOTE $PATHTONODEINSTALL is where node is installed (e.g. /usr/local/node)
sudo ln -s $PATHTONODEINSTALL/bin/node /usr/bin/node
sudo ln -s $PATHTONODEINSTALL/bin/npm /usr/bin/npm

1

最も簡単な解決策は次のとおりです。

npm uninstall packageName --save-dev

プロジェクトの上位レベルのパッケージ名を確認します。

npm list --depth=0

出力は次のようになります:

app@0.1.0 /home/jackkobec/projects/myAppName
├── packageName@packageVersion
├── express@4.16.4

パッケージ名をコピーしてnpm uninstallコマンドを実行します。エクスプレスパッケージの例:

npm uninstall express --save-dev

1

npmを使用してモジュールをアンインストールするには、次を使用できます。

npm uninstall moduleName

また、アンインストールして、変更をpackage.jsonに反映したい場合は、次のように--saveフラグを使用できます。

npm uninstall moduleName --save
OR
npm uninstall -S

また、devDependenciesからモジュールをアンインストールして、変更をpackage.jsonに反映したい場合は、次のように-Dフラグを使用できます。

npm uninstall moduleName -D

1

ノードモジュールをアンインストールするには:

npm uninstall <module_name>  

これにより、node_modulesからモジュールが削除されますが、package.jsonからは削除されません。

次のコマンドを使用して、package.jsonの使用からモジュールを削除します。

npm uninstall <module_name> --save 

これもpackage.jsonから削除されます。


0

さらに、のyarn代わりにを使い始めた場合npm
yarn remove <package-name>

同等のものです:
npm uninstall <package-name> --save

この意志
-からパッケージを削除するpackage.jsonだけでなく、
プロジェクトのアンインストールからそれ- node-modulesフォルダ


0

ノードモジュールは手動で削除できます。Windowsの場合

  1. node_modulesリポジトリのディレクトリに移動します。

  2. 不要なノードモジュールを削除します。

  3. でモジュールへの参照を削除することを忘れないでくださいpackage.json!プロジェクトは参照で引き続き実行されますが、エラーが発生する場合があります。また、package.json後で混乱を引き起こす可能性のある未使用の参照を残したくない場合もあります。


-1

使用する

npm uninstall <package_name>

Expressをアンインストールする例

npm uninstall express


-2

多数のモジュールをアンインストールする場合は、を実行するだけnpm uninstallです。次にpackage.json、そこから不要なモジュールに移動して削除し、コマンドを実行しnpm installます。問題が解決するはずです。

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