新しいubuntu vmをインストールして、ノードがインストールされたものをこの順序でテストします:
node
mongodb-server
npm
express
mongoose
今、私が気付いた新しいアプリを作成しようとすると、シェルでは使用できません。 express -v
はExpressを返します:コマンドが見つかりません
私はこのようにnpmをインストールしました
curl http://npmjs.org/install.sh | Sudo sh
この方法でExpressをインストールしました
npm install express
何か案は?
npm install express -g
グローバルにインストールする必要があります。
Npm 1.0はデフォルトでモジュールをローカルにインストールします。したがって、bash実行可能ファイルは/node_modules/bin/
。そのフォルダをPATH
に追加するか、express
をグローバルにインストールして、PATH
によって取得されるようにすることができます。
Express 4.00以降では、Express Generatorを次のようにインストールする必要もあります。
npm install -g express-generator
この後のみ、コマンドとしてexpressを実行できます!
確認については、次を参照してください: ExpressJS.com-Express 4への移行
私はこの問題を抱えており、Homebrew経由でノードをインストールしていました。問題はHomebrewが原因でした。
だから私はしました:
brew uninstall node
nodejs.org サイトのインストーラーを使用してノードをインストールします。
それから私は走った:
npm install -g express
そして出来上がりは問題ありません。
[〜#〜] edit [〜#〜]2017-06-29:この回答は6歳以上ですが、それでも投票/トラフィックを獲得します。代わりに(問題のある新規ユーザーの場合)私は _NODE_PATH
_ official doc とその 対応するビットについて= REPL使用法 この回答の前。
この問題と非常に似ていますが、ノードがグローバルエクスプレスインストールを見つけられなかったため、require('express')
ステートメントが失敗しました。
ノードがグローバルインストールを取得していなかったときに、_NODE_PATH
_ env。variable が正しく設定されていることを確認して、これを修正しました。 Ubuntu 11.04で、ノードバージョン0.5.0-preを使用すると、パスは次のようになります。
_NODE_PATH=/usr/local/lib/node_modules:/usr/local/lib/node
_
したがって、明確にするために、上記の環境をエクスポートすることをお勧めします。変数、または次のようにして上記の値をテストできます。
_NODE_PATH=/usr/local/lib/node_modules:/usr/local/lib/node node ./you_app.js
_
私は次のことを組み合わせて行う必要がありました。
node.jsモジュールのパス から:
echo 'export NODE_PATH="'$(npm root -g)'"' >> ~/.bash_profile && . ~/.bash_profile
これは、bashプロファイルのファイルパスを設定します(nano .bash_profile
を使用して表示できます)
Sudo
が必要だったので、レイノス(上記)から少し変更しました。
Sudo npm install express -g
Sudo
が必要なので、Fazi(上記)から少し変更しました。
Sudo npm install -g express-generator
アプリケーションをテストします:
run `DEBUG=myapp:* npm start`
Express 4.0.0のリリースでは、Sudo npm install -g express-generator.
Windowsを実行している場合:
export NODE_PATH="C:\Users\IMarek\AppData\Roaming\npm\node_modules"