【问题标题】:Express command not found after setting installing globally设置全局安装后找不到 Express 命令
【发布时间】:2018-03-05 16:33:51
【问题描述】:

当我运行sudo npm install -g express-generator:

/Users/myname/npm/bin/express -> /Users/myname/npm/lib/node_modules/express-generator/bin/express-cli.js
/Users/myname/npm/lib
   └── express-generator@4.15.5

当我运行express:

express not found

另外,当我运行which npm:时,我觉得很有趣:

/usr/local/bin/npm

那是路径。

似乎每当我尝试在全球范围内安装 yeoman 或这个 express 生成器之类的东西时,它都无法正常工作。

还应该注意的是,我在运行 zsh 的 Mac 上。

【问题讨论】:

  • 这样就成功了!我没有将其更改为 /usr/local/share/npm/bin/,而是将其更改为 export PATH=/usr/local/bin/npm:$PATH

标签: node.js macos express npm command-line


【解决方案1】:

很可能您的 npm bin 目录不在路径中。尝试通过ls -l /usr/local/share/npm/bin/列出该目录中的文件。

如果找到 express 文件,可以将该目录添加到export PATH=/usr/local/share/npm/bin:$PATH 的路径中。如果没有,很可能是您的安装出了点问题,您可以尝试重新安装该模块。

【讨论】:

  • 有趣。我在下面发布了修复,但我不确定它为什么会起作用。我也觉得express被单独发布在同一个目录中很奇怪。所以 /usr/local/bin/express
【解决方案2】:

在命令行中运行:

export PATH=/usr/local/bin/npm:$PATH

修复了这个问题...暂时。我不完全确定为什么会这样。

【讨论】:

    【解决方案3】:

    这会影响使用Node.jsnpmHomebrew 用户

    当您使用Homebrew 安装Node.js 时,它不会为您将npm 放在PATH 上,但它建议您应该这样做。

    Homebrew 不会修改用户的环境或点文件。但是, brew install node 确实会打印一条消息,建议用户将该路径添加到他们的 PATH 中。

    Source

    【讨论】:

      猜你喜欢
      • 2016-06-09
      • 1970-01-01
      • 2019-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-08
      相关资源
      最近更新 更多