我正在尽可能多地使用Homebrew。在MacOS X上安装Node.js、nvm和npm的推荐方式是什么?


当前回答

使用nvm安装Node.js,而不是Homebrew

在大多数回答中,推荐使用Homebrew安装nvm。

不要这样做。

在nvm的Github上,Readme清楚地说:

不支持自制程序安装。如果你对homebrew安装的nvm有问题,请先卸载它,然后按照下面的说明进行安装,然后再提交问题。

请使用下面的方法

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

脚本将nvm存储库克隆到~/。NVM并将源行添加到概要文件(~/。bash_profile、~ /。zshrc ~ /。或者~/.bashrc)。

然后使用nvm安装node。例如,要安装最新的LTS版本,请:

nvm install 16

干净,没有麻烦。它会把这个设置为你的默认Node.js版本,所以你应该都设置好了。

其他回答

我是这么做的:

curl https://raw.githubusercontent.com/creationix/nvm/v0.20.0/install.sh | bash
cd / && . ~/.nvm/nvm.sh && nvm install 0.10.35
. ~/.nvm/nvm.sh && nvm alias default 0.10.35

这款没有自制啤酒。

NVM很快将支持io.js,但现在还不支持:https://github.com/creationix/nvm/issues/590

然后用包安装每个项目的其他所有东西。Json和NPM安装。

我同意noa——如果你需要拥有多个版本的node, io.js,那么brew不是合适的解决方案。

你可以在nvm中帮助beta测试io.js支持:https://github.com/creationix/nvm/pull/616

如果你只想要io.js,并且不切换版本,那么你可以从https://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gz安装io.js的二进制发行版;这包括NPM,如果你不切换版本,你将不需要NVM。

记得在安装后更新npm: sudo npm install -g npm@latest

我使用n(节点版本管理)

您可以通过两种方式安装它

brew install n

or

npm install -g n

您可以在不同版本的node和io之间进行切换。下面是一个来自我当前env的例子,当我不带参数地调用n时:

$ n

  io/3.3.1
  node/0.12.7
  node/4.0.0
  node/5.0.0
ο node/5.10.1 

2021年更新

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

MAC故障处理:

从macOS 10.15开始,默认shell是zsh, nvm将寻找.zshrc来更新,默认情况下没有安装。用touch ~/创建一个。ZSHRC并再次运行安装脚本。

如果您使用bash(前面的默认shell),则运行touch ~/。Bash_profile来创建必要的配置文件(如果不存在)。

您可能需要重新启动终端实例或运行。~ / .nvm / nvm.sh。重新启动终端/打开新选项卡/窗口,或运行source命令将加载该命令和新配置。

您以前使用过bash,但是安装了zsh。您需要手动将这些行添加到~/。ZSHRC并运行。~ / . zshrc。

使用nvm安装Node.js,而不是Homebrew

在大多数回答中,推荐使用Homebrew安装nvm。

不要这样做。

在nvm的Github上,Readme清楚地说:

不支持自制程序安装。如果你对homebrew安装的nvm有问题,请先卸载它,然后按照下面的说明进行安装,然后再提交问题。

请使用下面的方法

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

脚本将nvm存储库克隆到~/。NVM并将源行添加到概要文件(~/。bash_profile、~ /。zshrc ~ /。或者~/.bashrc)。

然后使用nvm安装node。例如,要安装最新的LTS版本,请:

nvm install 16

干净,没有麻烦。它会把这个设置为你的默认Node.js版本,所以你应该都设置好了。