【问题标题】:Node forever /usr/bin/env: node: No such file or directory永远的节点 /usr/bin/env: node: No such file or directory
【发布时间】:2015-07-28 15:36:39
【问题描述】:

我已经安装了 nodejs 使用:

apt-get install nodejs

然后我安装了 npm 使用:

apt-get install npm

然后我一直使用:

npm install forever -g

现在我去我的项目/var/www/myproject

并尝试运行forever start server.js

然后我收到以下消息:

/usr/bin/env: node: No such file or directory

谁能告诉我这是怎么回事?

【问题讨论】:

标签: node.js forever


【解决方案1】:

编辑:截至 2018 年 12 月,这不再是正确的方法。请参阅其他两个答案。

您需要将 nodejs 可执行文件符号链接到节点 sudo ln -s "$(which nodejs)" /usr/local/bin/node 这样做的原因是,当您执行“apt-get install node”时,它会安装一个不相关的包,因此他们必须选择不同的名称,这样它就不会冲突

【讨论】:

  • 什么是 $(which nodejs)" 是你粘贴的代码我应该复制粘贴还是?
  • "$(which nodejs)" 获取 nodejs 可执行文件的路径。当你在 "$()" 里面放一些东西时,它会被执行,然后插入到包含的命令中
  • @chedabob 我也遇到了同样的问题,但是当我运行你的命令时我还没有解决它当时我得到了 ln: failed to create symbolic link '/usr/bin/node' : 文件存在
  • @dasadiya-chaitanya 在这种情况下,通过运行以下命令确保现有文件指向正确的节点可执行文件。 ls -lart /usr/bin/node.如果符号链接未指向正确的二进制文件,则在这种情况下将其删除。并重新运行以下命令: sudo ln -s "$(which nodejs)" /usr/bin/node
  • 在 Debian 和 Ubuntu 上,有一个包 nodejs-legacy 提供符号链接。您不应该手动执行此操作。 apt-get install nodejs-legacy 是解决问题的正确方法,请看下面我的回答。
【解决方案2】:

虽然接受的答案解决了问题,但正确的方法是安装 nodejs-legacy

apt-get install nodejs-legacy

原因是 Debian 已经有一个提供 /usr/bin/node 的包(节点),并且 nodejs node 二进制文件必须安装到 /usr/ bin/nodejs.

nodejs-legacy 包提供了从 /usr/bin/nodejs 到 /usr/bin/node 的符号链接(并且与 node 包冲突)。

来源:[CTTE #614907] Resolution of node/nodejs conflictDebian bug #614907: node: name conflicts with node.js interpreter

【讨论】:

  • 这是 Debian/Ubuntu +1 上的正确方法,对于不熟悉操作系统的人来说是很好的上下文。
  • 这完全破坏了 npm SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode,即使卸载旧版并重新安装 npm 也会引发相同的错误。
  • 继续我的最后一条评论,this answer 修复了当前答案的问题,我能够继续使用@Shantanu 提供的答案
  • 请不要这样做,它会破坏你的 npm 安装
【解决方案3】:

最好更新到最新的node版本

  1. sudo npm cache clean -f
  2. sudo npm install -g n
  3. sudo n 稳定

【讨论】:

    猜你喜欢
    • 2014-01-20
    • 2021-03-28
    • 2018-12-23
    • 2014-11-06
    • 2014-12-02
    • 2015-10-07
    • 1970-01-01
    • 2017-10-08
    • 2022-08-15
    相关资源
    最近更新 更多