この投稿ではnpm
コマンドで、ローカルのパッケージをインストールする方法を紹介します。
通常npm intall
はnpmjs.comで公開されたパッケージをダウンロードしてきてインストールしますが、ここで説明するのはローカルにのみ存在する自作のライブラリをinstall
する方法です。
(yarn
で同様のことをする方法は、「Yarnでローカルのパッケージをaddする方法」をご覧ください)
やりかた
ローカルのパッケージをインストールには、単純にインストールしたいパッケージのファイルパスをnpm intall
の引数にします:
npm install インストールしたいパッケージのパス
ローカルパッケージをインストールする具体例
少し具体例をもとに説明します。
以下の図のように、myapp
パッケージとmylib
パッケージがあり、myapp
からmylib
を使いたい例を見てみましょう。
mylib
のindex.js
では、helloWorld
変数が提供されていて、myapp
のmain.js
でそれを使いたいとします。
このとき、myapp
パッケージにてnpm install ../mylib
を実行するとこれが実現します:
$ npm install ../mylib
+ mylib@1.0.0
added 1 package and audited 1 package in 0.74s
found 0 vulnerabilities
インストールされると、package.json
にmylib
への依存設定が追加されます:
{
"name": "myapp",
"version": "1.0.0",
"license": "MIT",
"dependencies": {
"mylib": "file:../mylib"
}
}
main.js
を実行してみます:
$ node main.js
Hello World!
しっかりとmylib
の変数が使われているが分かります。
ちなみに、インストールされたmyapp/node_modules/mylib
は../../mylib
へのシンボリックリンクになります:
$ ls -la myapp/node_modules
lrwxr-xr-x 11 suin 14 Apr 9:35 mylib -> ../../mylib