Node.js の Windows へのインストールと npm の使い方
今回は Node.js の Windows 環境におけるインストールと、 そのパッケージ管理ツールである npm の使い方についてです。
Node.js とは
JavaScript は、もともとブラウザー側で解釈して、実行するクライアントサイドの言語です。Node.js を使うとローカル上で JavaScript を実行できるようになります。 これの何がいいかというと、 Node.js によりサーバーサイドの言語も JavaScript で書けるようになり、 サーバー、クライアントサイドともに同じ言語で開発できるようになります。
また、JavaScript の解析には Chrome の V8 エンジン を使っていて、動作速度はスクリプト言語の中では比較的、高速な方です。
なお、 Node.js は一時期、開発が停滞していて、業を煮やした人たちによって Io.js として分離していました。 しかし、今ではめでたく統合されています。
Node.js のインストール
まず、 Node.js のダウンロードページから Windows 用のインストーラー(node-vX.X.X-x86|x64.msi) をダウンロードします。ダウンロードしたインストーラーを実行すれば、 Node.js はインストールが開始されます。
基本的にデフォルトのままでも問題ありません。 変えるとしたら、インストール先ぐらいでしょう。
インストールするものもカスタマイズできますが、全部いれておいた方がいいです。
Node.js の使い方
インストールが完了したら、動くか確認してみます。Node.js の実行ファイルは node.exe です。
node.exe や次章の npm.exe はインストール時のカスタムで変更していなければ、 環境変数 PATH が通っているので、そのまま使えます。
また、 Node.js をインストールするとスタートメニューに [Node.js command prompt] ができるので、このコマンドプロンプト上で実行することもできます。
とりあえず動くことを確認するには -v オプションでバージョンが表示します。
> node.exe -v v5.4.0また、 -h でヘルプが表示されます。
> node.exe -h
スクリプトファイルの実行
node の基本的な使い方としては JavaScript ファイルを渡して実行します。hello.js :
console.log("Hello world!");
> node.exe hellol.js Hello world!
対話モード (REPL)
node の後にスクリプトファイルを指定しないと対話モードで起動します。> node > console.log("Hello world!"); Hello world! undefined > .exit
デバッグモード
node の引数に debug を渡して、その後にスクリプトファイルを書くとデバッガーが起動します。hello_debug.js :
console.log("Hello "); debugger; console.log("world!");
> node debug hello_debug.js debug>connecting to 127.0.0.1:5858 .< Debugger listening on port 5858 debug> . ok debug>break in d:\home\programmers_notes\node\hello_debug.js:2 1 > 2 console.log("Hello "); 3 debugger; 4 console.log("world!"); debug> next debug> debug>< Hello debug>break in d:\home\programmers_notes\node\hello_debug.js:3 1 2 console.log("Hello ");> 3 debugger; 4 console.log("world!"); 5 debug> cont debug> debug>break in d:\home\programmers_notes\node\hello_debug.js:4 2 console.log("Hello "); 3 debugger;> 4 console.log("world!"); 5 6 debug> quit
npm の使い方
Node.js には多くのパッケージが公開されており、 npm を使ってインストールなどの管理が出来ます。npm は最初の引数をコマンドとして種々の操作を行います。取り得るオプションや引数はそのコマンドによって変わってきます。
> npm コマンド [オプション] [引数]
プロキシ環境での設定 (config)
npm では Web からパッケージを取得してインストールします。 そのため、ネットワークの接続にプロキシを使用している場合は サーバーを設定していないとエラーとなります。プロキシサーバーを設定するには以下のコマンドを実行します。
> npm config -g set proxy プロキシサーバーのアドレス:ポート番号 > npm config -g set https-proxy プロキシサーバーのアドレス:ポート番号
> npm config -g set proxy http://foo.co.jp:8080 > npm config -g set https-proxy http://foo.co.jp:8080
プロキシを設定してもまだエラーが発生する場合には さらにレジストリーの参照先も変更する必要があります。
> npm config -g set registry http://registry.npmjs.org/ここで指定している -g オプションは全ユーザーに対して設定するためのものです。 -g をつけていないと実行しているユーザーのみの設定となります。
設定した内容を確認する場合は set ではなく ls(list) を指定します。
> npm config ls参考 :
プロジェクトの作成 (init)
Node.js のプロジェクトを作成する場合、 init のコマンドでプロジェクトの設定ファイル(package.json)ができます。> npm init [-y]-y (--yes) をつけるとすべてデフォルトの値を使って作成します。 つけていない場合は対話的に設定内容を入力することになります。
例えば、 sample フォルダーを作成し、そこで init -y を実行すると以下のファイルが作成されます。
package.json :
{ "name": "sample", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC" }各項目の詳しい説明については以下のサイトで記述されています。
パッケージのインストール (install)
パッケージのインストールは install(i) コマンドを使用します。> npm install [-g] [パッケージ名]パッケージ名でインストールするパッケージを指定します。 パッケージは最新版がインストールされますが パッケージ名@バージョン([email protected]) とするとバージョンを指定することができます。
-g (--global) はグローバルインストールのオプションです。
Gulp や JSHint のようにコマンドライン上で起動させるものはグローバルインストールにします。
通常のパッケージの場合は -g を付けません。この場合、カレントのプロジェクトに node_modules のフォルダーを作って、インストールされます。
また、 パッケージ名を省略するとカレントのプロジェクトで利用しているパッケージをまとめてインストールします。 こちらはダウンロードや Clone でプロジェクトを取得した際などに使います。
パッケージのアップデート(install, update)
パッケージのアップデートも install コマンドで行うことができます。例えば npm 自体をアップデートするには以下のコマンドを実行します。
> npm install -g npmまた、 update を使うとまとめてアップデートができます。 install と同様に -g オプションをつけるとグローバルインストールしたパッケージ、つけない場合はプロジェクトローカルのパッケージが対象です。
> npm update > npm -g update
パッケージの利用
パッケージをインストールすると require で呼び出して使うことができるようになります。index.js :
var lodash = require('lodash'); var output = lodash.without([1, 2, 3], 1); console.log(output);
> npm install lodash > node index.js [ 2, 3 ]ちなみに package.json の main でスクリプトファイルが指定されているパッケージの場合、 require で呼び出された際に、最初にそのファイルが実行されます。
依存パッケージの登録
パッケージ名の指定なしの npm install でインストールされるパッケージはそのプロジェクトが依存しているパッケージです。 依存パッケージは以下のコマンドでパッケージに登録(package.json に書き込み)できます。> npm install パッケージ名 --save > npm install パッケージ名 --save-dev--save-dev の方は開発やテストでのみ使用するパッケージに対して使います。
スクリプトの実行 (start, test, ...)
package.json の "scripts" フィールドの start や test などの項目に処理を記述すると npm から実行できるようになります。> npm start > npm test
例えば、 package.json に以下の記述を加えると npm start で index.js が実行されます。
"scripts": { "start": "node index.js" },
> npm start > [email protected] start c:\Users\...\sample > node index.js [ 2, 3 ]
その他のコマンド
その他のよく使いそうなコマンドもいくつかあげておきます。なお、 -g オプションは install の場合と同じで、対象がグローバルとなります。
コマンドの書式 | 別名 | 説明 |
---|---|---|
npm -h npm コマンド -h npm help 用語(コマンド) |
ヘルプの表示。 help コマンドの場合はブラウザーで説明のページを開く。 | |
npm uninstall [-g] パッケージ名 | remove, rm, r, un, unlink | パッケージのアンインストール |
npm ls [-g] npm ls [-g] パッケージ名 | list, la, ll |
インストールしたパッケージのリストの表示。 パッケージ名を指定するとそのパッケージの情報だけ表示。(バージョンを確認したい場合など) |
npm view パッケージ名 | info, show, v | パッケージの詳細情報の表示 |
Facebook コメント
コメント