npmでインストールしたパッケージを綺麗に整理!node_modulesフォルダのクリーンアップ
Node.js プロジェクトにおける node_modules フォルダのクリーンアップ
このような不要なパッケージは、ディスク容量を占有するだけでなく、プロジェクトのビルドや動作速度を遅くする原因にもなります。そこで、今回は node_modules
フォルダをクリーンアップする方法について解説します。
npm prune
コマンドは、package.json
ファイルに記述されていないパッケージを削除するコマンドです。以下のコマンドを実行することで、node_modules
フォルダから不要なパッケージを安全に削除できます。
npm prune
このコマンドは、package-lock.json
ファイルが存在する場合は、その内容も参照して削除対象のパッケージを判断します。
npx rimraf
コマンドは、指定されたフォルダとその内容をすべて削除するコマンドです。以下のコマンドを実行することで、node_modules
フォルダを完全に削除できます。
npx rimraf node_modules
ただし、このコマンドは package.json
ファイルの内容を考慮せず、指定されたフォルダとその内容をすべて削除してしまうため、誤って必要なファイルを削除してしまう可能性があります。
手動で削除する
上記のコマンドを使用する以外にも、以下の手順で手動で不要なパッケージを削除することもできます。
package.json
ファイルを開き、インストールされているパッケージの一覧を確認します。- 不要なパッケージの名前をメモします。
node_modules
フォルダを開き、メモしたパッケージのフォルダを削除します。
手動で削除する場合は、誤って必要なパッケージを削除しないよう注意が必要です。
注意事項
npm prune
コマンドを使用する場合は、package-lock.json
ファイルが最新の状態であることを確認してください。npx rimraf
コマンドを使用する場合は、誤って必要なファイルを削除しないよう注意してください。- 手動で削除する場合は、
package.json
ファイルの内容をよく確認してから削除してください。
node_modules
フォルダは、定期的にクリーンアップすることで、ディスク容量を節約し、プロジェクトのビルドや動作速度を向上させることができます。上記の方法を参考に、プロジェクトに合った方法で node_modules
フォルダをクリーンアップしてください。
補足
-
npm prune
コマンドとnpx rimraf
コマンドの違いnpm prune
コマンドは、package.json
ファイルとpackage-lock.json
ファイルの内容に基づいて、不要なパッケージを削除します。npx rimraf
コマンドは、指定されたフォルダとその内容をすべて削除します。
-
手動で削除する場合の注意点
node_modules
フォルダには、package.json
ファイルに記述されていないファイルも含まれている場合があります。- 誤って必要なファイルを削除すると、プロジェクトが正常に動作しなくなる可能性があります。
// package.json
{
"name": "my-project",
"version": "1.0.0",
"description": "My project",
"main": "index.js",
"dependencies": {
"express": "^4.17.1"
}
}
このプロジェクトでは、express
パッケージのみが package.json
ファイルに記述されています。
// index.js
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello, World!');
});
app.listen(3000);
以下のコマンドを実行すると、node_modules
フォルダから express
以外の不要なパッケージが削除されます。
npm prune
補足
- 上記のサンプルコードは、Node.js バージョン 16.14.0 で動作確認しています。
npm prune
コマンドを実行する前に、node_modules
フォルダのバックアップを取っておくことをお勧めします。
node_modules フォルダをクリーンアップするその他の方法
Yarn を使用する
Yarn は、npm と同様のパッケージマネージャーですが、node_modules
フォルダの管理機能がより強力です。Yarn を使用して node_modules
フォルダをクリーンアップするには、以下のコマンドを実行します。
yarn clean
npm-dedupe
コマンドは、node_modules
フォルダ内の重複しているパッケージを削除するコマンドです。以下のコマンドを実行することで、重複しているパッケージを削除できます。
npm-dedupe
手動で削除する
node_modules
フォルダをクリーンアップする方法はいくつかあります。プロジェクトに合った方法を選択して、不要なパッケージを削除し、ディスク容量を節約しましょう。
補足
- 手動で削除する場合は、
node_modules
フォルダ内のファイル構造をよく理解してから実行してください。
node.js package npm