【问题标题】:express: command not found , has worked before?快递:找不到命令,以前工作过吗?
【发布时间】:2015-08-11 21:58:32
【问题描述】:

我正在使用 OSX 10.10.4,之前在这台计算机上使用过 node.js 和 express。 但是现在当我想启动一个新的应用程序时,计算机将无法识别命令express

我已经尝试使用所有这些命令安装它:

- npm install express
 - npm install -g express
 - npm install express -g
 - sudo npm install -g express
 - sudo npm install express -g
 - npm install express-generator
 - npm install -g express-generator
 - npm install express-generator -g
 - sudo npm install -g express-generator
 - sudo install express-generator -g
 - sudo npm install -g express-generator@3
 - sudo npm install -g express-generator@4

但还是无法识别命令express

这是我在没有-g 的情况下安装时的输出

npm install express
express@4.13.3 node_modules/express
├── escape-html@1.0.2
├── merge-descriptors@1.0.0
├── cookie@0.1.3
├── array-flatten@1.1.1
├── utils-merge@1.0.0
├── cookie-signature@1.0.6
├── methods@1.1.1
├── fresh@0.3.0
├── range-parser@1.0.2
├── vary@1.0.1
├── path-to-regexp@0.1.7
├── content-type@1.0.1
├── etag@1.7.0
├── parseurl@1.3.0
├── content-disposition@0.5.0
├── serve-static@1.10.0
├── depd@1.0.1
├── qs@4.0.0
├── finalhandler@0.4.0 (unpipe@1.0.0)
├── on-finished@2.3.0 (ee-first@1.1.1)
├── debug@2.2.0 (ms@0.7.1)
├── proxy-addr@1.0.8 (forwarded@0.1.0, ipaddr.js@1.0.1)
├── type-is@1.6.6 (media-typer@0.3.0, mime-types@2.1.4)
├── accepts@1.2.12 (negotiator@0.5.3, mime-types@2.1.4)
└── send@0.13.0 (destroy@1.0.3, statuses@1.2.1, ms@0.7.1, mime@1.3.4, http-errors@1.3.1)

当我使用 -g 安装时

sudo npm install -g express-generator
Password:
/Users/Maiteh/.node/bin/express -> /Users/Maiteh/.node/lib/node_modules/express-generator/bin/express
express-generator@4.13.1 /Users/Maiteh/.node/lib/node_modules/express-generator
├── sorted-object@1.0.0
├── commander@2.7.1 (graceful-readlink@1.0.1)
└── mkdirp@0.5.1 (minimist@0.0.8)

我尝试了一些其他的东西,比如PATHnodejs-legacy,但它们都不起作用。 使用sudo apt-get install nodejs-legacy,计算机找不到命令apt-get

【问题讨论】:

    标签: node.js macos express terminal


    【解决方案1】:

    我安装后得到express:command not found的原因是因为我的$PATH不知道express在哪里。

    对于任何想要安装 express 命令行工具的人,我已经这样做了

    sudo npm install express-generator -g

    导致

    /usr/local/share/npm/bin/express -> /usr/local/share/npm/lib/node_modules/express-generator/bin/express
    express-generator@4.13.1 /usr/local/share/npm/lib/node_modules/express-generator
    ├── sorted-object@1.0.0
    ├── commander@2.7.1 (graceful-readlink@1.0.1)
    └── mkdirp@0.5.1 (minimist@0.0.8)
    

    当我尝试express --version 时,我得到了command not found

    使用open ~/.bash_profile从终端打开你的bash_profile

    然后添加安装 express 后获得的路径,在我的情况下是 /usr/local/share/npm/lib/node_modules/express-generator/bin/express

    将此添加到您的 bash_profile

    export PATH=/usr/local/share/npm/lib/node_modules/express-generator/bin:$PATH

    保存文件并返回终端。输入hash -r然后退出终端重新启动。

    现在,如果您尝试express --version,您应该会看到命令行工具正在工作。

    【讨论】:

      【解决方案2】:

      你在这里描述的问题有点混杂,所以我会尝试一次解决一个。

      1. Express 是一个流行的 node.js 框架。将其添加到您的项目的典型方法是执行npm install --save express,然后将其保存到您的package.json 文件中并安装到node_modules。将 -g 添加到该命令将尝试全局安装它,但这不是 express 的使用方式。 Express 是在每个项目的基础上使用的。详情请见他们的website

      2. 在您运行的大量命令中,您提到了express-generator。 Express-generator 是一种工具,可让您快速构建一些样板文件,从而使启动 express 项目更容易一些。由于express-generator 旨在全局运行而不是在项目中运行,因此您必须使用-g 标志安装它。有关使用和安装的详细信息,请参阅他们的website

      3. 您正在尝试使用 apt-get 命令安装更多节点内容。该命令用于 Linux(通常是 Ubuntu/Debian)机器上的包管理。 Mac OS X 不附带它(你绝对不需要它)。任何提及运行apt-get 的说明均不针对 Mac 用户。

      基本上,我认为您没有问题,您显示的日志正是我希望看到的。使用express-generator 生成一个样板项目,您应该准备好开始处理您的快速项目。祝你好运!

      【讨论】:

      • 感谢您的回复,我(现在仍然)有点绝望,因为我似乎无法让它工作,而且我真的很讨厌 Node.js。所以我真的在尽一切努力让它工作,甚至看起来像是 linux 计算机页面上的解决方案。但是我已经尝试了 npm install --save express,它给出了与以前几乎完全相同的输出(没有错误)但是终端仍然找不到命令 express :s
      • 这就是我在回答中所说的,没有明确的命令。不应该有。你不要那样使用它。
      • 对不起,如果我现在听起来完全愚蠢,那么你如何创建一个快速应用程序,它会自动生成一堆文件,如 package.json 文件、app.js 文件、视图文件夹等. Like this
      • 你听起来并不愚蠢,这很令人困惑。你应该运行sudo npm install -g express-generator,看看它是否安装正确。如果是这样,运行express(如 express-generator 网站上所示)应该会提示您创建一个项目。如果这个和我的回答对您有帮助,请记得将其标记为已接受。
      • 这正是我尝试做的,我确实得到了一个包含节点模块的文件夹,并且在文件夹 express 中,但我无法运行 express
      猜你喜欢
      • 2014-12-17
      • 2014-05-24
      • 1970-01-01
      • 2020-08-13
      • 2016-04-09
      • 1970-01-01
      • 2014-05-25
      • 2016-06-02
      相关资源
      最近更新 更多