前回の内容とかぶるのですが。
開発スピードの超早いNodeですが、あまりにも早過ぎるため開発中にどんどん新しいバージョンがリリースされてしまいます。
流行りもの好きな人にとっては居ても立ってもいられない状況であり、それを解決するためのツールの一つにnaveがあります。
もはや説明するまでもなく、Nodeのバージョン管理ツールです。
今日はnaveを使ってタイトルのようなエラー、または他にもNodeで使うはずのモジュールが「Cannot findだぜ!」となる人へ。
$ node app.jp node.js:12 throw e; / process.nextTick error, or ‘error’ event on first tick ^ Error: Cannot find module ‘express'
要は環境変数NODE_PATHに対し、正しくNodeモジュール群のパスを示せれば良いので、
export NODE_PATH=/path/to/node_modulesとすれば良いのですが、
「/path/to/node_modulesってどこだよっ!?」って人は、
naveをインストールしたディレクトリを起点に
[naveインストールディレクトリ]/installed/[バージョン番号]/lib/node_modulesにあります。
これで解決なのですが、毎回 export 打つのは面倒です。なので、
$ vim ~/.zshrc --------------------------------- export NODE_PATH=/path/to/node_modulesとしても良いのですが、.zshrcにハードコーディングするとバージョンが変わるたびに.zshrcを書き換えなければいけません。
そこで、もう一つの代案として、
$ vim /path/to/nave.sh ----------------------------------- # nave_use()を探して、その関数内にある local lib=“$prefix/lib/node:$prefix/lib/node_modules”と変更する方法でも良いです。
ちなみにnave.shは僕の環境だと
$ ls -la ~/.nave 合計 116 drwxr-xr-x 5 koexuka groupname 4096 3月 6 00:21 . drwxr-xr-x 6 koexuka groupname 4096 3月 6 00:16 .. drwxr-xr-x 8 koexuka groupname 4096 3月 3 14:33 .git -rw-r--r-- 1 koexuka groupname 14 3月 3 14:33 .gitignore -rw-r--r-- 1 koexuka groupname 14 3月 3 14:33 .npmignore -rw-r--r-- 1 koexuka groupname 9 3月 3 17:24 .zshenv -rw-r--r-- 1 koexuka groupname 248 3月 3 14:33 AUTHORS -rw-r--r-- 1 koexuka groupname 4002 3月 3 14:33 README.md drwxr-xr-x 4 koexuka groupname 4096 3月 4 15:04 installed -rwxr-xr-x 1 koexuka groupname 12918 3月 4 15:06 nave.sh -rw-r--r-- 1 koexuka groupname 345 3月 4 15:02 naverc -rw-r--r-- 1 koexuka groupname 197 3月 3 14:33 package.json drwxr-xr-x 3 koexuka groupname 4096 3月 4 15:04 srcにあります。
以上でぇぇぇぇぇぇす。
0 件のコメント:
コメントを投稿