Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js express:未找到命令,以前是否工作过?_Node.js_Macos_Express_Terminal - Fatal编程技术网

Node.js express:未找到命令,以前是否工作过?

Node.js express:未找到命令,以前是否工作过?,node.js,macos,express,terminal,Node.js,Macos,Express,Terminal,我正在使用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 instal

我正在使用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)
我尝试过其他一些东西,比如
路径
nodejslegacy
,但它们都不起作用。
使用
sudo-apt-get-install-nodejs legacy
时,计算机找不到命令
apt-get

,您在这里描述的问题有很多,因此我将尝试一次解决一个

  • Express是node.js的流行框架。将其添加到项目中的典型方法是执行
    npm安装--save express
    ,然后将其保存到
    package.json
    文件中,并将其安装到
    node\u模块中。将
    -g
    添加到该命令将尝试全局安装它,但express不是这样使用的。Express以每个项目为基础使用。有关详细信息,请参阅他们的

  • 在您运行的命令的大列表中,您提到了
    expressgenerator
    。expressgenerator是一个工具,它可以让您快速构建一些样板文件,从而使启动一个Express项目变得更容易。由于
    expressgenerator
    是在全局范围内运行的,而不是在项目内部运行,因此您可以使用
    -g
    标志安装它。有关使用和安装的详细信息,请参阅其

  • 您正在尝试使用
    apt-get
    命令安装更多节点。该命令用于Linux(通常是Ubuntu/Debian)机器上的包管理。MacOSX没有附带它(而且你绝对不需要它)。任何提到运行apt get的指令都不是针对Mac用户的


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

    我安装后未找到
    express:command
    的原因是因为我的
    $PATH
    不知道express在哪里

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

    sudo npm安装快速发电机-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
    时,我发现一个
    命令未找到

    使用
    Open~/.bash\u profile

    然后添加安装express后得到的路径,在我的例子中是
    /usr/local/share/npm/lib/node\u模块/express生成器/bin/express

    将此添加到您的bash_配置文件中

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

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


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

    感谢您的回复,我当时(现在仍然)有点绝望,因为我似乎无法让它工作,我在Node.js上真的很差劲。所以我真的尝试了一切让它工作,甚至是linux计算机页面上的解决方案。但是我尝试过npm安装--save-express,它给出的输出几乎与以前完全相同(没有错误),但是终端仍然找不到命令express:这就是我在回答中所说的,没有express命令。不应该有。你不会那样使用它。如果我现在听起来很愚蠢,我很抱歉,但是你如何创建一个express应用程序,它会自动生成一堆文件,比如package.json文件、app.js文件、views文件夹等。你听起来并不愚蠢,这相当令人困惑。您应该运行
    sudo npm install-g express generator
    ,查看它是否安装正确。如果是这样,运行express generator网站上显示的
    express
    ,应该会提示您创建项目。如果这和我的答案对您有帮助,请记住将其标记为已接受。这正是我试图做的,我确实得到了一个包含节点模块的文件夹,它位于文件夹express中,但我无法运行express