centos 下使用 yum 默认安装的 nodejs 版本为 v6.x。可以使用 n 命令来升级切换 nodejs 版本。
安装 n 命令
n 是一个 nodejs 管理工具,https://github.com/tj/n
$ npm install -g n
使用 n 安装 nodejs 版本
安装最新版本
$ n latest
或者 n stable
安装指定版本
$ n node/13.11.0
切换 nodejs 版本
$ n
选择已安装的版本
node/10.4.1 ο node/13.11.0 Use up/down arrow keys to select a version, return key to install, d to delete, q to quit
使用 node -v
命令,查看当前版本,如果显示如下则表示切换成功。
v13.11.0
注意:切换之后,查看版本如果还是原来 v6.x 版本,需要设置一下 PATH
设置 PATH
查看 node 当前安装路径
$ which node /usr/local/bin/node
编辑配置文件
$ vi ~/.bash_profile
将下边两行插入到文件末尾:
export N_PREFIX=/usr/local export PATH=$N_PREFIX/bin:$PATH
:wq
保存退出
执行 source
使修改立即生效
$ source ~/.bash_profile
再执行 node -v
命令查看版本是否切换成功。
问题
安装完成后,敲node命令时,出现如下问题:
dyld: initializer function 0x0 not in mapped image for /usr/local/bin/node
npm等其他命令也是如此。
经过一番折腾,在网上找到了解决办法。删除/usr/local/n/versions/node下的所有node版本,然后重新使用n命令安装即可。