【问题标题】:Installed node.js ver 0.8 but node --version still shows previous version 0.6.12安装了 node.js 版本 0.8 但 node --version 仍然显示以前的版本 0.6.12
【发布时间】:2013-02-01 04:41:10
【问题描述】:

我尝试在我的 ubuntu 12.04 上安装节点 0.8。它已经有一个节点 0.6.12。安装成功但是当我输入时

node --version

它仍然显示以前的版本。 我尝试使用 sudo apt-get remove node 删除以前的版本,但它说未安装包节点。但是在尝试 node --version 时它显示 0.6.12 为什么会这样??

【问题讨论】:

  • 每个版本是如何安装的? “哪个节点”在终端中显示什么?

标签: node.js ubuntu installation ubuntu-12.04


【解决方案1】:

问题是,您需要将节点的新位置替换为 PATH 变量中的旧位置。如果您有旧的手动安装,请通过运行 echo $PATH 找到节点的旧路径。然后运行这个命令:

export PATH=${PATH%$OLD_NODE_PATH/bin*}$NEW_NODE_PATH/bin${PATH#$*OLD_NODE_PATH/bin}

或者,如果您使用的是来自 apt-get 存储库的安装,只需运行:

export PATH=$NEW_NODE_PATH/bin

这应该可以解决您的问题。但是有更好的方法!管理 node.js 环境的最佳工具是NVM。如果您熟悉这些工具,它与 ruby​​ 的 RVM 和 python 的 virtualenv 完全一样。它允许您非常有效地切换节点版本并下载新版本,并且易于使用。下载并安装:

curl https://raw.github.com/creationix/nvm/master/install.sh | sh

然后将此行添加到您的 bash(假设您正在运行一个 bash shell),它将被加载(我更喜欢 .bash_login 用于个人内容,尽管默认情况下不加载):

[[ -s $HOME/.nvm/nvm.sh ]] && . $HOME/.nvm/nvm.sh

获取您的 bash 脚本或重新启动终端,然后输入以下命令:

nvm install 0.8.0 && nvm use 0.8.0

这应该让你很好。尽管没有必要,但为了整洁起见,您可能应该摆脱所有其他节点安装。查看他们的 github 页面,但为了让您开始,这里有一个快速概述:

nvm ls                   # list all installed versions of node
nvm ls-remote            # list all available versions of node
nvm install 0.9.8        # download and install node v0.9.8
nvm use 0.8.0            # switch current environment to use node v0.8.0
nvm alias default 0.8.0  # set 0.8.0 as default, you can use 'nvm use default' 
nvm deactivate           # use system install of node
nvm run default app.js   # run app.js with default node version

【讨论】:

  • 你也可以用 curl 代替 git clone https://github.com/creationix/nvm.git nvm
【解决方案2】:

在我按照以下说明操作之前,我遇到了这个问题 https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager

其中包括跑步:

sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update

首先。然后运行 ​​sudo apt-get install nodejs npm 让我进入 0.8.x

另见:http://apptob.org/

【讨论】:

    【解决方案3】:

    似乎您从 Ubuntu 存储库安装 nodejs 包并在之后手动安装 node 0.8? 尝试删除 nodejs 包。

    【讨论】:

    • 我尝试使用 sudo apt-get remove node 删除,但它说未安装包节点。但在尝试 node --version 时显示 0.6.12
    • 我记得这个包是nodejs而不是node。您可以尝试“哪个节点”并给我输出吗?
    • 好的,我可以使用 apt-get remove nodejs 删除软件包,但是在手动安装新版本 0.8 后,当我键入 node --version 时,找不到这样的文件 /usr/local/bin/node
    • @jade,当您进行更改(例如删除程序)时,请确保重新启动终端。这将重新加载您的 shell 环境。也看看我的回答。我想它会对你有所帮助。
    【解决方案4】:

    获取更新版本的 Node.js 的方法是添加由 NodeSource 维护的 PPA(个人包存档)。这可能会比官方 Ubuntu 存储库拥有更多最新版本的 Node.js。

    首先,您需要安装 PPA 才能访问其内容:

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

    PPA 将添加到您的配置中,并且您的本地包缓存将自动更新。从 nodesource 运行安装脚本后,您可以使用以下命令安装 Node.js 包。

    sudo apt-get install nodejs
    

    您可以使用此命令检查节点

    node -v
    

    【讨论】:

      猜你喜欢
      • 2018-10-17
      • 2023-03-12
      • 2014-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-28
      相关资源
      最近更新 更多