を使用してインストールした Node.js モジュールはどこにありますnpm
か?
23 に答える
グローバルライブラリ
実行npm list -g
して、インストールされているグローバルライブラリとそれらが配置されている場所を確認できます。npm list -g | head -1
パスのみを示す切り捨てられた出力に使用します。一緒にインストールされるサブパッケージではなく、メインパッケージのみを表示する場合は、npm list --depth=0
すべてのパッケージを表示し、グローバルにインストールされたパッケージのみを取得するには、-gieを追加しますnpm list -g --depth=0
。
Unixシステムでは、通常、グローバルにインストールされる/usr/local/lib/node
か/usr/local/lib/node_modules
、グローバルにインストールされます。環境変数をこのパスに設定するNODE_PATH
と、モジュールはノードごとに見つかります。
Windows XP- %USERPROFILE%\AppData\npm\node_modules
Windows 7、8、および10-%USERPROFILE%\AppData\Roaming\npm\node_modules
非グローバルライブラリ
非グローバルライブラリは、node_modules
現在のフォルダのサブフォルダにインストールされます。
実行npm list
して、現在の場所にインストールされている非グローバルライブラリを確認できます。
インストールする場合は、-gオプションを使用してグローバルにインストールします
npm install -g pm2
--pm2はグローバルにインストールされます。その後、通常は/usr/local/lib/node_modules
(npm root -g
場所を確認するために使用)にあります。
npm install pm2
--pm2はローカルにインストールされます。その後、通常、のローカルディレクトリにあります。/node_modules
このコマンドnpm root
は、npm パッケージの有効なインストール ディレクトリを示します。
現在の作業ディレクトリがノード パッケージまたはノード パッケージのサブディレクトリであるnpm root
場合、ローカル インストール ディレクトリが表示されます。npm root -g
現在の作業ディレクトリに関係なく、グローバル インストール ルートが表示されます。
例:
$ npm root -g
/usr/local/lib/node_modules
グローバルにインストールされたモジュールの場合:
他の回答はプラットフォーム固有の回答を提供しますが、一般的な回答は次のとおりです。
を使用してグローバル モジュールをインストールするとnpm install -g something
、npm は構成変数prefix
を検索して、モジュールのインストール先を認識します。
実行することでその値を取得できますnpm config get prefix
そのフォルダーで使用可能なすべてのグローバル モジュールを表示するにはnpm ls -g --depth 0
(depth 0
依存関係を表示しないようにします)。
グローバル モジュール パスを変更する場合は、ファイルに挿入するか、 を使用しnpm config edit
ます。prefix = /my/npm/global/modules/prefix
npm config set prefix /my/npm/global/modules/prefix
nodistなどのツールを使用すると、グローバル npm モジュールのプラットフォームのデフォルト インストール パスが変更されます。
npm がインストールした実行可能ファイルを探している場合は、おそらくそれを PATH に入れたいため、単純に実行できます。
npm bin
また
npm bin -g
モジュールがグローバル ( -g
) フラグを使用してインストールされた場合、次を実行して親の場所を取得できます。
npm get prefix
また
npm ls -g --depth=0
インストールされているモジュールのリストとともに場所を出力します。
以前のバージョンの NPM モジュールでは、常に /usr/local/lib/node または .npmrc ファイル内で npm ルートを指定した場所に配置されていました。ただし、NPM 1.0+ では、モジュールは 2 つの場所にインストールされます。/.node_modules でアプリケーションのローカルにモジュールをインストールするか、上記を使用するグローバルにインストールすることができます。
詳細については、https://github.com/isaacs/npm/blob/master/doc/install.mdをご覧ください。
最も簡単な方法は、
npm リスト -g
パッケージを一覧表示し、インストールされている場所を表示します。
chololatey 経由で npm をインストールしたので、場所は
C:\MyProgramData\chocolatey\lib\nodejs.commandline.0.10.31\tools\node_modules
C:\MyProgramData\ はチョコレートのリポジトリの場所です。
他の答えが言うように、最善の方法は
npm list -g
ただし、多数のnpm
パッケージがインストールされている場合、このコマンドの出力は非常に長くなり、上にスクロールするのが非常に面倒になる可能性があります (場合によっては、そこまでスクロールすることさえできません)。
この場合、次のmore
ように、出力をプログラムにパイプします。
npm list -g | more
ドキュメントから:
パッケージは、接頭辞の下の node_modules フォルダーにドロップされます。ローカルにインストールする場合、これは require("packagename") でそのメイン モジュールをロードしたり、 require("packagename/lib/path/to/sub/module") で他のモジュールをロードしたりできることを意味します。
Unix システムへのグローバル インストールは、{prefix}/lib/node_modules に移動します。Windows でのグローバル インストールは、{prefix}/node_modules に移動します (つまり、lib フォルダーはありません)。
スコープ付きパッケージは同じ方法でインストールされますが、関連する node_modules フォルダーのサブフォルダーにグループ化され、そのスコープ プレフィックスの名前が @ 記号で付けられます。たとえば、npm install @myorg/package はパッケージを {prefix} に配置します。 /node_modules/@myorg/package. 詳細については、スコープを参照してください。
パッケージを require() する場合は、ローカルにインストールします。
{prefix}
で入手できますnpm config get prefix
。(nvm でノードをインストールした場合に便利です)。