我通过apt-get install和所有依赖项安装了节点js和npm,然后我安装了browserify
npm install browserify -g
它经历了整个过程,看起来它安装得正确,但是当我尝试按照这个方法做一个简单的捆绑时walkthrough
我收到错误:
/ usr / bin / env:node:没有这样的文件或目录
我通过apt-get install和所有依赖项安装了节点js和npm,然后我安装了browserify
npm install browserify -g
它经历了整个过程,看起来它安装得正确,但是当我尝试按照这个方法做一个简单的捆绑时walkthrough
我收到错误:
/ usr / bin / env:node:没有这样的文件或目录
9 回答
如果您不想使用符号链接,则可以执行此操作 . 适用于ubuntu
和声标签是为新的ECMAscript和谐
这会创建符号链接
/usr/bin/node -> nodejs
.资料来源:https://lists.debian.org/debian-devel-announce/2012/07/msg00002.html
新答案:
卸载任何nodejs包你've installed via your system package manager (dnf, apt-get, etc), delete any silly symlinks you'已经重新创建每次升级(lol) .
安装NVM,
使用nvm来安装nodejs:nvm install 6
旧答案:
任何关于创建符号链接或安装其他节点包的讨论都是假的,不可持续 .
解决这个问题的正确方法是:
使用apt-get简单安装nodejs包就像你已经拥有的那样
使用
update-alternatives
表示你的nodejs二进制文件负责#!/usr/bin/env node
像这样:
现在,这在包装升级,分散升级等方面变得可持续 .
当我在Linux中构建atom时,我似乎遇到了同样的问题 .
修复我的问题 . 对你有帮助 .
运行
apt-get install nodejs-legacy
.某些Linux发行版更改了node.js二进制名称,使其与许多node.js包不兼容 . 包
nodejs-legacy
提供了一个符号链接来解决此问题 .一些Linux发行版安装nodejs不是“node”可执行文件而是“nodejs” .
在这种情况下,您必须手动链接到“节点”,因为在“节点”二进制文件之后编程了许多包 . “python2”没有链接到“python”也会发生类似的事情 .
在这种情况下,您可以执行简单的符号链接 . 对于将软件包二进制文件安装到
/usr/bin
的Linux发行版,您可以这样做你必须调用"nodejs"而不是"node" . 要验证这一点,请在shell上键入
node -v
:如果未找到任何内容,请尝试nodejs -v
. 如果显示版本号,那么您应该使用的命令是nodejs
而不是node
. 因此,您必须将脚本中的browserify调用从node
更改为nodejs
(如下所示):replace同
您可能还必须以超级用户身份打开脚本 .
which node
结果将是什么/home/moh/.nvm/versions/node/v8.9.4/bin/node
复制上面的路径,然后在步骤3中运行命令 .
ln -s /home/moh/.nvm/versions/node/v8.9.4/bin/node /usr/bin/node
您还可以使用 NVM 或Nodejs Version Manager安装Nodej . 使用版本管理器有很多benefits . 其中一个是你不必担心这个问题 .
说明:
安装必备软件包后,可以从项目的GitHub页面下载nvm安装脚本 . 版本号可能不同,但一般情况下,您可以使用以下语法下载并安装它:
这将下载脚本并运行它 . 它将软件安装到主目录的子目录
~/.nvm
. 它还会为~/.profile
文件添加必要的行以使用该文件 .要访问nvm功能,您需要注销并重新登录,或者您可以获取〜/ .profile文件,以便您当前的会话知道更改:
现在您已经安装了nvm,您可以安装隔离的Node.js版本 .
要找出可用于安装的Node.js版本,可以键入:
正如您所看到的,撰写本文时的最新版本是v0.11.14 . 您可以通过输入以下命令安装:
通常,nvm将切换为使用最近安装的版本 . 您可以通过键入以下内容明确告诉nvm使用我们刚刚下载的版本:
使用nvm安装Node.js时,可执行文件称为节点 . 您可以通过键入以下内容来查看shell当前使用的版本:
Comeplete教程可以找到here