npmの基本的な使い方まとめ
npmの基本的な使い方のまとめです。忘れたときに見返す用。
- npmのインストールから、モジュールを取ってきて使うところまで。
- 環境は、CentOS7です。
インストール
node.jsをインストールすると、一緒に入ります。
ここを参考にソースからインストールしました。
$ sudo yum groupinstall 'Development tools' $ wget http://nodejs.org/dist/v0.12.0/node-v0.12.0.tar.gz $ tar xvf node-v0.12.0.tar.gz $ cd node-v0.12.0/ $ ./configure --prefix=/usr/local $ make $ sudo make install
バージョンを確認。
$ node -v v0.12.0 $ npm -v 2.5.1
モジュールのインストール
$ npm install <モジュール名> 例) $ npm install gulp
- モジュール名を指定しない場合、package.json に書かれた依存モジュールをインストールします。
- <モジュール名>@<バージョン> で任意のバージョンのモジュールをインストールできます。
- 参考:npm - CLI Commands - install
ローカルインストールとグローバルインストール
- ローカルインストール
- 開発中のアプリが依存するライブラリをインストールする場合に利用します。
- インストールしたモジュールは、プロジェクト内のみで使えます。
- 同じマシンで開発している他のプロジェクトからは使えないので、それぞれで別のバージョンを使用したりできます。
- モジュールは、
/node_modules にインストールされます。
- グローバルインストール
- grunt のような、マシン全体で共有できるツールやライブラリをインストールする場合はこちら。
- インストールしたモジュールは、マシン全体で共有されます。
- 試した環境では、 --prefix=/usr/local を指定してコンパイルしているので、モジュールは/usr/local/lib/node_modules/ にインストールされました。
- パーミッションに注意。EACCES エラーが起きる場合は、パーミッションか、インストール先を変更します。
試しに、gulp をインストールしてみます。
- -gをつけるとグローパルインストールになります。
- バージョンを明示して、それぞれ別バージョンをインストールしてみます。
$ mkdir -p test/app $ cd test/app $ sudo npm install -g gulp@3.8.10 $ gulp -v [09:55:35] CLI version 3.8.10 $ npm install gulp@3.8.11 $ gulp -v [10:02:46] CLI version 3.8.10 [10:02:46] Local version 3.8.11
インストールしたモジュールを使う
require して使います。
以下は、 uuid をインストールしてuuidを出力するサンプルです。
インストール
$ npm install uuid
uuidを使うプログラム test.js を書きます。
"use strict"; var uuid = require('uuid'); console.log(uuid.v1());
実行してみます。
$ node test.js 28bc71c0-c533-11e4-ad39-918ab091b1ed
モジュールのアンインストール
uninstallを実行すればOK
$ npm uninstall uuid
インストール済みモジュールを一覧表示する
ls でローカルにインストールしたモジュールの一覧を表示します。
$ npm ls test/app ├─┬ gulp@3.8.11 │ ├── archy@1.0.0 │ ├─┬ chalk@0.5.1 │ │ ├── ansi-styles@1.1.0 │ │ ├── escape-string-regexp@1.0.3 │ │ ├─┬ has-ansi@0.1.0 │ │ │ └── ansi-regex@0.2.1 │ │ ├─┬ strip-ansi@0.3.0 │ │ │ └── ansi-regex@0.2.1 │ │ └── supports-color@0.2.0 │ ├── deprecated@0.0.1 │ ├─┬ gulp-util@3.0.4 │ │ ├── array-differ@1.0.0 .. 略