我正在尝试将nodeJs安装到我的Ubuntu 14.04中,以便使用GruntJs。

我读过关于Ubuntu不同的安装方法(问题?),所以我是这样安装它的:

sudo apt-get install npm

sudo npm install -g grunt-cli

输入grunt之后,我得到了错误:

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

所以,我试过:

curl -sL https://deb.nodesource.com/setup | sudo bash -

sudo apt-get install -y nodejs

sudo apt-get update

再次尝试,仍然得到错误,我尝试了:

sudo add-apt-repository https://launchpad.net/~chris-lea/+archive/node.js/

sudo apt-get install -y nodejs

我得到了这个信息:

nodejs is already the newest version.
0 to upgrade, 0 to newly install, 0 to remove and 3 not to upgrade.

以防万一,我试着清理了一下:

sudo apt-get autoremove

但是,错误仍然存在:当我输入grunt时,我仍然得到/usr/bin/env: node: No这样的文件或目录

我该怎么办?


当前回答

在我的例子中,安装nodejs-legacy解决了这个问题。

sudo apt-get install nodejs-legacy

其他回答

有两种解决方案:

a)设置你的PATH变量包括"/usr/local/bin"

export PATH=“$PATH:/usr/local/bin”

b)创建一个符号链接到“/usr/bin”,它已经在你的PATH中

ln -s /usr/bin/nodejs /usr/bin/node

我希望这能有所帮助。

如果你已经安装了nodejs(检查哪个nodejs),并且不想安装另一个包,你可以,作为root:

update-alternatives --install /usr/bin/node node /usr/bin/nodejs 99

在我的例子中,安装nodejs-legacy解决了这个问题。

sudo apt-get install nodejs-legacy

对于我的情况,链接没有工作如下

ln -s /usr/bin/nodejs /usr/bin/node

但是您可以以根用户身份打开/usr/local/bin/lessc,并将第一行从node更改为nodejs。

-#!/usr/bin/env node +#!/usr/bin/env nodejs

遵循这些命令来解决问题。

在终端中:

清理整个NPM缓存: $ sudo清除NPM缓存 Sudo NPM install -g 安装最新的稳定版本的Node.js: Sudo n稳定的

现在已经安装了最新版本的Node.js。检查版本使用:

node -v