1.什么是nvm?

nvm 是 Mac 下的 node 管理工具,可以在同一台电脑上安装多个Node.js版本灵活切换。

2.安装前的准备

a. 卸载已安装到全局的 node/npm
  如果之前是在官网下载的 node 安装包,运行后会自动安装在全局目录,其中 node 命令在 /usr/local/bin/node,npm 命令在全局 node_modules 目录中,具体路径为 /usr/local/lib/node_modules/npm

b. 安装 nvm 之前最好先删除下已安装的 node 和全局 node 模块

npm ls -g --depth=0 # 查看已经安装在全局的模块,以便删除这些全局模块后再按照不同的 node 版本重新进行全局安装
sudo rm -rf /usr/local/lib/node_modules # 删除全局 node_modules 目录
sudo rm /usr/local/bin/node # 删除 node
cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk '{print $9}'| xargs rm # 删除全局 node 模块注册的软链

3.安装nvm

去官网查看最新版本安装命令: https://github.com/nvm-sh/nvm/blob/master/README.md

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh | bash

或者

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh | bash

若安装报错:curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
解决办法:
通过IPAddress.com首页,输入raw.githubusercontent.com查询到真实IP地址:199.232.68.133
Mac OS 系统:打开终端(Terminal)
默认位置在 启动台–>其他–>终端在终端输入以下命令:sudo vi /etc/hosts

i 修改,在尾部追加内容:199.232.68.133 raw.githubusercontent.com

然后:wq保存即可

4. 或者通过brew安装

brew install nvm
编辑配置文件,vim ~/.bash_profile,文件中写入如下内容
export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
输入source ~/.bash_profile 保存。

5. 安装node指定版本

nvm ls-remote // 查看所有的node可用版本
nvm list // 查看已安装node版本
nvm install 版本号 // 下载指定node版本,如nvm install v11.14.0
nvm use 版本号 // 使用指定版本
nvm alias default // 设置默认版本,每次启动终端都使用该版本

6. 通过 n 来管理 node 版本

可以安装 n 来管理和变更 node 版本。

安装 n
npm install -g n
变更 node 版本
n 14.17.0

Mac安装Nvm Node开发环境的更多相关文章

  1. Mac安装vue.js开发环境

    Mac安装vue.js开发环境 DannyHooDanny的专栏订阅 一.vue.js开发环境 二.初始化一个vue.js项目 三.vue.js项目打包部署 本来以为在Mac上搭建vue.js的环境挺 ...

  2. Mac 安装RN android开发环境

    前言 前面介绍了MAC 安装,再来讲讲mac 安装 安卓的开发环境 首先貌似很多Mac自带安卓JDK ,你可以在终端上输入java -version 看是否已经有java开发环境. 如果没有java开 ...

  3. 分享下mac安装xamarin跨平台开发环境的坑

    之前在vs2015上安装好了xamarin环境,考虑到调试IOS仍然需要mac机,昨天决定直接在mac上安装xamarin. 安装完所有的效果如上图,此时已经可以创建安卓和IOS环境. 我安装过程中, ...

  4. [转] 使用NVM快速搭建NODE开发环境

    export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node 本文主要介绍最近自己碰到的几个坑以及搜索到的相应解决方案: 如何快速搭 ...

  5. 【强烈推荐,超详细,实操零失误】node.js安装 + npm安装教程 + Vue开发环境搭建

    node.js安装 + npm安装教程 + Vue开发环境搭建 [强烈推荐,超详细,实操零失误] 原博客园地址:https://www.cnblogs.com/goldlong/p/8027997.h ...

  6. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  7. Mac下搭建php开发环境教程

    方案一:原生安装 这篇文章主要介绍了Mac下搭建php开发环境教程,Mac OS X 内置了Apache 和 PHP,这样使用起来非常方便.本文以Mac OS X 10.6.3为例,需要的朋友可以参考 ...

  8. Mac系统cocos2dx + android 开发环境配置

    Mac系统cocos2dx + android 开发环境配置 /****************************************************** 这遍文章主要转载自:htt ...

  9. mac 配置Python集成开发环境

    mac 配置Python集成开发环境(Eclipse +Python+Pydev) 1.下载Mac版64位的Eclipse. 进入到Eclipse官方网站的下载页面(http://www.eclips ...

  10. node开发环境配置

    node开发环境配置 用处 NodeJS——后台 JavaScript-前台 后台其他语言 1.PHP 2.Java 3.Pythonnode优势 1.性能高 nodejs php 86 1s 1分半 ...

随机推荐

  1. 读Java8函数式编程笔记02_流

    1. 外部迭代 1.1. for循环是一个封装了迭代的语法糖 1.1.1. 本质上来讲是一种串行化操作 1.2. 很难抽象出不同操作 2. 内部迭代 2.1. 内部迭代中的相应接口:Stream 2. ...

  2. ubuntu下yaml-cpp安装与使用

    安装 从GitHub上下载源码编译安装:git clone https://github.com/jbeder/yaml-cpp.git: 进入源码目录并创建一个 build 目录:cd yaml-c ...

  3. 二、typora软件的安装与markdown语法

    目录 一.typora软件的安装与使用 1.软件的安装 2.破解使用的方法 3.功能描述(markdown语法讲解) 标题 小标题 语言环境 表格 表情 图片 查看源代码 数学公式 流程图 高亮文本 ...

  4. 10月31日ATM编写逻辑描述

    目录 ATM逻辑描述 三层框架简介 1.第一层(src.py) 2.第二层(interface文件夹下内容) 3.第三层(db_hanlder) 启动函数 用户注册功能 用户登录 common中的小功 ...

  5. 开源分布式支持超大规模数据分析型数据仓库Apache Kylin实践-上

    @ 目录 概述 定义 特性 术语 技术概念 架构和组件 生态圈 部署 Docker部署 基于hadoop环境安装 前置条件 安装 使用步骤 官方样例Cube说明 示例演示 准备演示数据 创建项目 选择 ...

  6. 简单了解C语言如何构建多文件项目

    简单理解C语言如何构建工程 首先我们最好有一个好用的编辑器,vscode也好,visual studio也罢,dev也行,这里我们使用的是code::block: 一.了解C语言工程的构建原理 ​ 首 ...

  7. MongoDB数据库记录

    启动 MongoDB 服务 标准 URI 连接语法: mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:po ...

  8. gitlabApi如何获取项目文件夹的commitId

      在我们做配置管理系统和gitlab系统集成的时候,有一个常见的场景,就是要获取某个文件的commitId,来记录本次配置文件提交的版本.这个通过gitlabApi很容易实现: GET /proje ...

  9. PID控制_位置式

    位置式: 1. 位置式: pid.c: float PID_calculate( float dT_s, //周期(单位:秒) float in_ff, //前馈值 float expect, //期 ...

  10. css 显示n行文字的方法 超出的部分用省略号代替

    // 超出的部分用省略号代替 text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; // 显示文字的行数 over ...