刚刚安装了新的ubuntu vm来测试节点 按此顺序安装的东西:
node
mongodb-server
npm
express
mongoose
现在,尝试创建一个新的app我注意到express不能在shell中使用。
express -v
返回
express:未找到命令
我像这样安装了npm
curl http://npmjs.org/install.sh | sudo sh
我用这种方式表达
npm install express
任何想法?
答案 0 :(得分:84)
从快递4.00开始,您还需要安装快速生成器:
npm install -g express-generator
只有在此之后才能将express作为命令运行!
答案 1 :(得分:39)
npm install express -g
您需要全局安装。
Npm 1.0默认在本地安装模块。所以bash可执行文件存在于/node_modules/bin/
中。您可以将该文件夹添加到PATH
,也可以全局安装express
,以便PATH
答案 2 :(得分:6)
我遇到了这个问题,并通过Homebrew安装节点。问题是由Homebrew引起的。
所以我做了:
brew uninstall node
然后使用nodejs.org站点上的安装程序安装节点。
然后我跑了:
npm install -g express
没问题。
答案 3 :(得分:2)
编辑 2017-06-29:这个答案是6岁以上,但仍然获得投票/流量。相反,(对于任何有问题的新用户)在此回答之前我会信任NODE_PATH
official doc及其corresponding bit about REPL usage。
与此问题非常相似,节点未找到我的全局快速安装,因此require('express')
语句将失败。
为我解决了这个问题,当节点没有选择全局安装时,确保NODE_PATH
env. variable被正确设置。
在Ubuntu 11.04上,节点版本为0.5.0-pre,路径为:
NODE_PATH=/usr/local/lib/node_modules:/usr/local/lib/node
所以,澄清你可能想要导出上面的env。变量,或者您可以通过执行以下操作来测试上述值:
NODE_PATH=/usr/local/lib/node_modules:/usr/local/lib/node node ./you_app.js
答案 4 :(得分:2)
随着Express 4.0.0的发布,您似乎需要执行sudo npm install -g express-generator.
答案 5 :(得分:2)
我必须做一些事情:
echo 'export NODE_PATH="'$(npm root -g)'"' >> ~/.bash_profile && . ~/.bash_profile
这会在bash配置文件中设置文件路径(可以使用nano .bash_profile
由于我需要sudo
,因此从Raynos(上图)稍作修改:
sudo npm install express -g
由于我需要sudo
,我从Fazi(上图)稍作修改:
sudo npm install -g express-generator
测试您的应用程序:
run `DEBUG=myapp:* npm start`
答案 6 :(得分:0)
如果您正在运行Windows:
export NODE_PATH="C:\Users\IMarek\AppData\Roaming\npm\node_modules"