使用 npm 安装后,在 bash 中找不到 express 命令

发布于 2024-11-09 06:53:30 字数 379 浏览 0 评论 0原文

刚刚安装了新的 ubuntu 虚拟机来测试节点 按以下顺序安装了东西:

node
mongodb-server
npm
express
mongoose

现在,尝试创建一个新应用程序,我注意到 Express 不能在 shell 中使用。 express -v 返回 express:找不到命令

我像这样安装了 npm

curl http://npmjs.org/install.sh | sudo sh

并且我以这种方式安装了express

npm install express

有什么想法吗?

just installed new ubuntu vm to test around with node
installed things in this order:

node
mongodb-server
npm
express
mongoose

now, trying to create a new app i noticed express cannot be used in the shell.
express -v returns
express: command not found

i installed npm like this

curl http://npmjs.org/install.sh | sudo sh

and i installed express this way

npm install express

any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

泪意 2024-11-16 06:53:30

从express 4.00开始,您还需要安装express生成器:

npm install -g express-generator

只有在此之后,您才能将express作为命令运行!

如需确认,请参阅:ExpressJS.com - 迁移到 Express 4

Starting from express 4.00 you also need to install express generator with:

npm install -g express-generator

Only after this will you be able to run express as a command!

For confirmation see: ExpressJS.com - Migrating to Express 4

清引 2024-11-16 06:53:30

npm install express -g

您需要全局安装它。

Npm 1.0 默认在本地安装模块。因此 bash 可执行文件位于 /node_modules/bin/ 中。您可以将该文件夹添加到 PATH 中,也可以只全局安装 express,以便它被 PATH 拾取

npm install express -g

You need to install it globally.

Npm 1.0 installs modules locally by default. So the bash executable lives in /node_modules/bin/. You can add that folder to PATH or you can just install express globally so that it's picked up by PATH

愛放△進行李 2024-11-16 06:53:30

我遇到了这个问题,并通过 Homebrew 安装节点。该问题是由 Homebrew 引起的。

所以我这样做了:

brew uninstall node

然后使用 nodejs.org 站点上的安装程序安装了节点。

然后我跑了:

npm install -g express

瞧,没问题了。

I had this problem and was installing node via Homebrew. The problem was being caused by Homebrew.

So I did:

brew uninstall node

and then installed node using the installer on the nodejs.org site.

Then I ran:

npm install -g express

And voila no problems.

小傻瓜 2024-11-16 06:53:30

随着 Express 4.0.0 的发布,您似乎需要执行 sudo npm install -gexpress-generator。

With the release of Express 4.0.0 it looks like you need to do sudo npm install -g express-generator.

你怎么这么可爱啊 2024-11-16 06:53:30

编辑 2017-06-29:这个答案已有 6 年以上历史,但仍然获得投票/流量。相反(对于任何有问题的新用户)我会信任< code>NODE_PATH 官方文档 及其有关 REPL 使用的相应内容 在这个答案之前。

与此问题非常相似,节点找不到我的全局快速安装,因此 require('express') 语句将失败。

当节点未选择全局安装时,为我解决此问题的方法是确保 NODE_PATH env。变量设置正确。
在 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

EDIT 2017-06-29: this answer is 6+ years old, but still gets votes/traffic. Instead (for any new users with problems) I'd trust both NODE_PATH official doc and its corresponding bit about REPL usage before this answer.

Quite similar to this issue, node was not finding my global express install, so a require('express') statement would fail.

What fixed this for me, when a global install wasn't being picked up by node was making sure NODE_PATH env. variable was is set correctly.
On Ubuntu 11.04, with node version 0.5.0-pre, the paths me were:

NODE_PATH=/usr/local/lib/node_modules:/usr/local/lib/node

So, to clarify you might want to export the above env. variable, or you can just test the above values out by doing:

NODE_PATH=/usr/local/lib/node_modules:/usr/local/lib/node node ./you_app.js
为你鎻心 2024-11-16 06:53:30

我必须做一些事情的组合:

  1. 来自 node.js 模块路径:< /p>

    echo 'export NODE_PATH="'$(npm root -g)'"' >>> 〜/.bash_profile && 。 〜/ .bash_profile
    

    这会设置 bash 配置文件中的文件路径(可以使用 nano .bash_profile

  2. 从 Raynos 稍作修改(上图)因为我需要 sudo

    sudo npm installexpress -g
    
  3. 由于我需要 sudo,对 Fazi(上图)进行了稍微修改:< /p>

    sudo npm install -g express-generator
    

测试您的应用程序:

run `DEBUG=myapp:* npm start`

参考:http://expressjs.com/en/starter/generator.html

I had to do a combination of things:

  1. From node.js modules path:

    echo 'export NODE_PATH="'$(npm root -g)'"' >> ~/.bash_profile && . ~/.bash_profile
    

    This sets the file path in bash profile (can be viewed using nano .bash_profile

  2. Slightly modified from Raynos (above) since I needed sudo:

    sudo npm install express -g
    
  3. Slightly modified from Fazi (above) since I needed sudo:

    sudo npm install -g express-generator
    

TEST YOUR APPLICATION:

run `DEBUG=myapp:* npm start`

Ref: http://expressjs.com/en/starter/generator.html

梦纸 2024-11-16 06:53:30

如果您运行的是 Windows:

export NODE_PATH="C:\Users\IMarek\AppData\Roaming\npm\node_modules"

IF you are running windows:

export NODE_PATH="C:\Users\IMarek\AppData\Roaming\npm\node_modules"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文