Ros*_*nda 295 ubuntu node.js node-modules gruntjs npm-install
我正在尝试将nodeJs安装到我的Ubuntu 14.04中以便使用GruntJs.
我已经阅读了Ubuntu不同的做法(问题?),所以这就是我为安装它而做的事情:
sudo apt-get install npm
sudo npm install -g grunt-cli
Run Code Online (Sandbox Code Playgroud)
在那之后打字咕噜我有错误:
/usr/bin/env: node: No such file or directory
Run Code Online (Sandbox Code Playgroud)
所以,我试过了:
curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)
再试一次,仍然得到错误,我试过:
sudo add-apt-repository https://launchpad.net/~chris-lea/+archive/node.js/
sudo apt-get install -y nodejs
Run Code Online (Sandbox Code Playgroud)
我有这样的信息:
nodejs is already the newest version.
0 to upgrade, 0 to newly install, 0 to remove and 3 not to upgrade.
Run Code Online (Sandbox Code Playgroud)
我确实尝试过清理,以防万一:
sudo apt-get autoremove
Run Code Online (Sandbox Code Playgroud)
但是没有,错误仍然存在:当我输入咕噜声时,我仍然会得到 /usr/bin/env: node: No such file or directory
我该怎么办?
Ros*_*nda 787
找到了答案.为了防止有人,我会在这里发布:
做一个符号链接可以解决这个问题:( ln -s /usr/bin/nodejs /usr/bin/node
我要感谢和+1投票给bodokaiser).
注意:我认为这篇文章并不完全重复,因为该帖子有点像浏览器问题.
Muh*_*rat 114
问题不在于节点版本.相反,它是默认情况下在Ubuntu中安装NodeJS的方式.在Ubuntu中运行Node应用程序时,您必须运行nodejs somethign.js
而不是node something.js
所谓终端的应用程序名称nodejs
,而不是node
.这就是为什么有必要为一个符号链接简单的转发收到的所有命令node
到nodejs
.
ln -s /usr/bin/nodejs /usr/bin/node
Run Code Online (Sandbox Code Playgroud)
小智 54
我认为你应该升级最新的节点版本
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
Run Code Online (Sandbox Code Playgroud)
Moh*_*loo 33
如果您使用nvm
节点版本管理器,请使用此命令创建符号链接:
sudo ln -s "$(which node)" /usr/bin/node
sudo ln -s "$(which npm)" /usr/bin/npm
Run Code Online (Sandbox Code Playgroud)
node
npm
小智 29
如果你能够使用nodejs命令访问ubuntu终端上的节点,那么可以使用创建nodejs和node的符号链接来简单地解决这个问题
ln -s /usr/bin/nodejs /usr/bin/node
这可以解决问题
小智 24
就我而言,安装nodejs-legacy解决了这个问题.
sudo apt-get install nodejs-legacy
Run Code Online (Sandbox Code Playgroud)
我发现这通常是一个错误的错误,如果你从一个包管理器安装你bin可能被称为nodejs所以你只需要像这样符号链接
ln -s /usr/bin/nodejs /usr/bin/node
Run Code Online (Sandbox Code Playgroud)
如果您已经安装了nodejs(请检查which nodejs
)并且不想安装另一个软件包,您可以以root用户身份:
update-alternatives --install /usr/bin/node node /usr/bin/nodejs 99
Run Code Online (Sandbox Code Playgroud)
小智 6
当我使用gulp时,我遇到了这个错误.
~$ gulp
Run Code Online (Sandbox Code Playgroud)
/ usr/bin/env:'node':没有这样的文件或目录
通过执行以下命令删除了这一点,您必须记住/ usr/bin目录具有所有权限.
~$ ln -s /usr/bin/nodejs /usr/bin/node
Run Code Online (Sandbox Code Playgroud)
这对我有用..
小智 6
根据您安装节点的方式,大多数情况下它可能不在 /usr/bin/ 中,在我自己的情况下,我使用 nvm 进行安装,因此我的节点位于 ./nvm/versions 中。
使用此命令which node
我找到了路径,但为了使工作更轻松,您可以运行此命令。
nodepath=$(which node); sudo ln -s $nodepath /usr/bin/node
Run Code Online (Sandbox Code Playgroud)
上面的命令将获取您节点的位置并为您创建一个链接。
小智 6
请按照以下命令解决问题。
在终端中:
清理整个 NPM 缓存:
$ sudo npm cache clean -f
Run Code Online (Sandbox Code Playgroud)sudo npm install -g n
Run Code Online (Sandbox Code Playgroud)安装最新稳定版本的 Node.js:
sudo n stable
Run Code Online (Sandbox Code Playgroud)现在最新版本的 Node.js 已安装。使用以下命令检查版本:
node -v
Run Code Online (Sandbox Code Playgroud)
如果使用 snap 安装,
sudo ln -sfn /snap/node/current/bin/node /usr/bin/node
Run Code Online (Sandbox Code Playgroud)
小智 5
对此有两种解决方案:
a) 将 PATH 变量设置为包含“/usr/local/bin”
export PATH="$PATH:/usr/local/bin"
b) 创建一个指向“/usr/bin”的符号链接,它已经在你的 PATH 中
ln -s /usr/bin/nodejs /usr/bin/node
我希望它有帮助。
归档时间: |
|
查看次数: |
199215 次 |
最近记录: |