Nodejs npm install express -g 全局安装 Express 后命令行输入 Express 提醒 “express 不是内部或外部命令的问题”

Nodejs npm install express -g 全局安装 Express 后命令行输入 Express 提醒 “express 不是内部或外部命令的问题”

这个不知道 Express 开发人员是怎么想的,用 npm install express -g 全局安装的 Express 虽然在\AppData\Roaming\npm\node_modules 目录下有 express 目录,但却没有在 npm 下天剑 express.cmdexpress.exe 命令文件。所以即使你安装成功了全局 Express,仍不能使用 Express 命令新建项目。

官方文档有 npm install -g expre-generator 这个命令,安装后就可以使用 express -e 命令创建 express 项目。

不知道这是为什么?有大神解释下吗?


8 回复

Node.js npm install express -g 全局安装 Express 后命令行输入 Express 提醒 “express 不是内部或外部命令的问题”

问题描述

当你使用 npm install express -g 全局安装 Express 框架后,尝试通过命令行输入 express 创建一个新的 Express 项目时,会遇到“express 不是内部或外部命令”的错误。

解释

这个现象出现的原因是因为全局安装的 Express 并不是用来直接运行的工具。实际上,Express 是一个用于构建 Web 应用的框架,而不是用于创建项目的命令行工具。因此,直接使用 express 命令不会生效。

解决方法

正确的做法是使用 express-generator,这是一个专门用来生成 Express 项目的脚手架工具。你需要先全局安装 express-generator,然后通过它来创建新的 Express 项目。

  1. 全局安装 express-generator

    首先,你需要全局安装 express-generator

    npm install -g express-generator
    
  2. 使用 express-generator 创建新项目

    安装完成后,你可以使用 express 命令来创建一个新的 Express 项目。例如,创建一个名为 myapp 的项目:

    express myapp
    

    这将生成一个包含所有基本文件和目录的新项目结构。

  3. 安装依赖

    切换到新创建的项目目录并安装依赖项:

    cd myapp
    npm install
    
  4. 启动项目

    最后,你可以启动项目来查看效果:

    npm start
    

示例代码

# 全局安装 express-generator
npm install -g express-generator

# 创建一个新项目
express myapp

# 切换到项目目录并安装依赖
cd myapp
npm install

# 启动项目
npm start

通过上述步骤,你应该能够成功创建并运行一个新的 Express 项目。


是不是express命令创建的项目共享一个express模板,项目多了不好控制,所以才支持每个项目npm install express安装一个express模板?

这二天无聊看书,也给这个问题所困扰。后来发现,如果用npm install -g express安装后,只存在node_moudles\express\lib\express.sh等相关文件,没有bin目录,也没有express.cmd之类的文件。 按上述npm install -g express-generator执行后,才可以直接执行express。

npm install express -g只是说可以require了要想在terminal下用express生成project,还需要``` $ npm install -g express-generator

正解 4.X版本,把generator分离出来了,需要单独安装

npm install -g expre-generator 是说全局安装express4以上的版本;express -e 是说创建一个以ejs模板的项目 e是说ejs

终于找到原因了

当你通过 npm install express -g 全局安装 Express 框架时,你会发现虽然 Express 模块被安装到了全局目录中,但是并不能直接通过命令行使用 express 命令来创建一个新的 Express 项目。这是因为 express 命令并不是由 express 包提供的,而是由另一个名为 express-generator 的包提供的。

要解决这个问题,你需要先卸载已经全局安装的 express 包(如果有的话),然后全局安装 express-generator 包。以下是具体步骤:

  1. 卸载已安装的 express(如果存在):

    npm uninstall express -g
    
  2. 安装 express-generator

    npm install express-generator -g
    
  3. 使用 express 命令创建新的 Express 项目

    express myapp
    

    这里 myapp 是你新项目的名称。执行上述命令后,Express 将会在当前目录下生成一个名为 myapp 的文件夹,并且在这个文件夹里包含了一个基本的 Express 应用程序结构。

  4. 进入新创建的项目文件夹并安装依赖

    cd myapp
    npm install
    
  5. 启动应用

    npm start
    

现在你应该能够成功地通过 express 命令创建并运行一个新的 Express 项目了。

回到顶部