目次
NPMの紹介
NPMは、NodeJSとともにインストールされるパッケージ管理ツールであり、NodeJSコードのデプロイにおける多くの問題を解決できます。
- ユーザーが他のユーザーによって作成されたサードパーティのパッケージをNPMサーバーからローカルで使用できるようにダウンロードできるようにします。
- ユーザーがローカルで使用するために、他のユーザーが作成したコマンドラインプログラムをNPMサーバーからダウンロードしてインストールできるようにします。
- ユーザーが自分のパッケージまたはコマンドラインプログラムをNPMサーバーにアップロードして、他のユーザーが使用できるようにします。
nodejsの新しいバージョンにはnpmが統合されているため、npmも以前にインストールされています。「npm-v」と入力して、インストールが成功したかどうかをテストすることもできます
$ npm -v
2.3.0
npmのダウンロードとインストールの過程で、ネットワーク接続が不安定になることが多いため、国産の淘宝網ミラーを使用してダウンロードすることを強くお勧めします。
npm install -g cnpm --registry=https://registry.npm.taobao.org
npmコマンドを使用してモジュールをインストールします
npm installNode.jsモジュールの構文形式は次のとおりです。
$ npm install <Module Name>
次の例では、npmコマンドを使用して、一般的に使用されるNode.jsWebフレームワークモジュールExpressをインストールします。
$ npm install express
インストール後、エクスプレスパッケージはプロジェクトディレクトリの下のnode_modulesディレクトリに配置されるため、サードパーティのパッケージパスを指定せずに、コードでrequire( 'express')を渡すだけで済みます。
var express = require('express');
グローバルインストールとローカルインストール
npmのパッケージインストールは、ローカルインストールとグローバルインストールの2つのタイプに分けられます。コマンドラインからの唯一の違いは、次のような-gがあるかどうかです。
npm install express # 本地安装
npm install express -g # 全局安装
次のエラーが発生した場合:
npm err! Error: connect ECONNREFUSED 127.0.0.1:8087
解決策は次のとおりです。
$ npm config set proxy null
ローカルインストール
- インストールパッケージを./node_modules(npmコマンドが実行されているディレクトリ)の下に置きます。node_modulesディレクトリがない場合、node_modulesディレクトリは、npmコマンドが現在実行されているディレクトリの下に生成されます。
- require()を使用して、ローカルにインストールされたパッケージを導入できます。
グローバルインストール
- インストールパッケージを/ usr / localまたはノードのインストールディレクトリに置きます。
- コマンドラインで直接使用できます。
両方の機能が必要な場合は、2か所にインストールするか、npmリンクを使用する必要があります。
次に、グローバルメソッドを使用してExpressをインストールします
$ npm install express -g
インストールプロセス中に次の内容が出力されます。最初の行には、モジュールのバージョン番号とインストール場所が出力されます。
[email protected] node_modules/express
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
インストール情報の表示
次のコマンドを使用して、グローバルにインストールされているすべてのモジュールを表示できます。
$ npm list -g
├─┬ [email protected]
│ ├── [email protected]
│ ├── [email protected]
│ ├── [email protected]
│ ├─┬ [email protected]
│ │ └── [email protected]
│ ├─┬ [email protected]
│ │ └── [email protected]
……
特定のモジュールのバージョン番号を確認する場合は、次のコマンドを使用できます。
$ npm list grunt
projectName@projectVersion /path/to/project/folder
└── [email protected]
モジュールをアンインストールします
次のコマンドを使用して、Node.jsモジュールをアンインストールできます。
$ npm uninstall express
アンインストール後、/ node_modules /ディレクトリに移動してパッケージがまだ存在するかどうかを確認するか、次のコマンドを使用して確認します。
$ npm ls
モジュールの更新
次のコマンドを使用してモジュールを更新できます。
$ npm update express
検索モジュール
モジュールを検索するには、以下を使用します。
$ npm search express
モジュールの作成
モジュールを作成するには、package.jsonファイルが不可欠です。NPMを使用して、基本的な結果を含むpackage.jsonファイルを生成できます。
$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
name: (node_modules) runoob # 模块名
version: (1.0.0)
description: Node.js 测试模块(www.runoob.com) # 描述
entry point: (index.js)
test command: make test
git repository: https://github.com/runoob/runoob.git # Github 地址
keywords:
author:
license: (ISC)
About to write to ……/node_modules/package.json: # 生成地址
{
"name": "runoob",
"version": "1.0.0",
"description": "Node.js 测试模块(www.runoob.com)",
……
}
Is this ok? (yes) yes
状況に応じて上記の情報を入力する必要があります。最後に「yes」と入力すると、package.jsonファイルが生成されます。
次に、次のコマンドを使用して、npmリソースライブラリにユーザーを登録できます(電子メールで登録)。
$ npm adduser
Username: mcmohd
Password:
Email: (this IS public) [email protected]
次に、次のコマンドを使用してモジュールを公開します。
$ npm publish
上記の手順を正しく実行した場合は、他のモジュールと同じようにnpmを使用してインストールできます。
一般的なNPMコマンド
この章で紹介した部分に加えて、NPMは多くの機能も提供し、package.jsonには他にも多くの便利なフィールドがあります。
npmjs.org/doc/で公式ドキュメントを表示することに加えて、ここにいくつかの一般的なNPMコマンドがあります。
-
npm help installを使用して、npm helpinstallなどのコマンドの詳細なヘルプを表示します。
-
package.jsonが配置されているディレクトリでnpminstallを使用します。-gは、最初に現在のコマンドラインプログラムをローカルにインストールできます。これは、リリース前のローカルテストに使用できます。
-
npm updateを使用して、現在のディレクトリのnode_modulesサブディレクトリにある対応するモジュールを最新バージョンに更新します。
-
npm update -gを使用して、グローバルにインストールされている対応するコマンドラインプログラムを最新バージョンに更新します。
-
npm cache clearを使用して、NPMローカルキャッシュをクリアします。これは、同じバージョン番号を使用して新しいバージョンのコードをリリースするユーザーを処理するために使用されます。
-
npm unpublish @を使用して、公開したコードの特定のバージョンを非公開にします。