如何使用Brew安装最新版本的Node

Pan*_*ood 144 macos homebrew

NodeJs的最新版本现在是0.4.1

现在命令brew install node,安装0.2.6 - 这是不理想的.我想要0.4.1

我已经查看了brew 的命令列表并尝试过brew install --HEAD node

但是安装节点0.5-pre.

为什么brew没有安装正确的版本,我怎么能强迫它找到正确的版本?

在这个阶段,看起来下载src并手动安装它实际上会更容易.但我想知道Brew发生了什么.

And*_*oev 287

按以下顺序运行以下命令:

brew update
brew doctor
brew upgrade node
Run Code Online (Sandbox Code Playgroud)

现在您已经安装了节点的更新版本,并且它可能没有链接.如果不是,那么只需输入:brew link nodebrew link --overwrite node

  • 不断得到`/usr/local/share/doc/node 不可写。` (3认同)
  • 错误:没有这样的桶:/ usr/local/Cellar/node (3认同)
  • “ brew link --overwrite节点”确实很重要!谢谢 (2认同)
  • @SabaAhang 只需运行 `sudo chown -R $USER /usr/local` (2认同)

Eri*_*lsh 123

在通过brew安装/升级节点后,我遇到了这个问题:node命令工作但不是npm命令.

我使用这些命令来修复它.

brew uninstall node
brew update
brew upgrade
brew cleanup
brew install node
sudo chown -R $(whoami) /usr/local
brew link --overwrite node
brew postinstall node
Run Code Online (Sandbox Code Playgroud)

我在试用和错误之后使用...拼凑了这个解决方案...

  • `sudo brew postinstall node`将抛出错误,除非brew由root拥有(不推荐).如果你已经做过`sudo chown -R $(whoami)/ usr/local`,我认为不应该这样做.你应该能够运行`brew postinstall node`. (7认同)
  • @SamFen的权利。不需要`sudo`。在我给出命令清单之前,我首先运行了可接受的答案。之后,我运行`node -v`,现在一切似乎都很好。 (2认同)

Lil*_*ard 122

你先跑了brew update吗?如果你不这样做,Homebrew无法更新其公式,如果它不更新其公式,它不知道如何安装最新版本的软件.

  • 是的,我试过'brew update node',但我现在看到你是对的.它没有发生在我身上,因为doco说'brew update'会更新brew软件 - 这似乎没什么区别.但它提到"formulea" - 这只是一个(坦率地说)愚蠢东西基本上是它的"软件版本的库"字.我可以做'brew info node'来找出它要安装的版本.它设置为0.4.0所以我最终还是从src安装,但这是对的.谢谢. (2认同)

Lan*_*ard 20

有时brew update我失败了,因为一个软件包无法正常下载.所以你可以像这样升级一个特定的库:

brew upgrade node
Run Code Online (Sandbox Code Playgroud)

https://gist.github.com/3005832


小智 10

  1. node -v 将显示当前版本。
  2. npm -v 将显示当前版本。
  3. brew link --overwrite --dry-run node 将强制链接并覆盖所有冲突的文件。
  4. brew install node 进行全新安装。
  5. brew update
  6. brew upgrade node
  7. brew link --overwrite node

    或者

    brew link node

节点升级程序如下


ojr*_*ore 9

我不得不这样做brew link --overwrite nodebrew install node,更新从0.4到0.8.18


Ale*_*ndr 9

另外,在安装新节点版本后,请尝试停用当前节点版本。它帮助到我。

nvm deactivate
Run Code Online (Sandbox Code Playgroud)

这已从$ PATH中删除/Users/user_name/.nvm/*/bin

在该节点更新后

node --version
v10.9.0
Run Code Online (Sandbox Code Playgroud)


小智 5

刚刚在 Homebrew 0.9.5 中使用了这个解决方案,这似乎是升级到最新稳定版本 node.js 的快速解决方案。

brew update
Run Code Online (Sandbox Code Playgroud)

这将安装最新版本

brew install node
Run Code Online (Sandbox Code Playgroud)

取消链接您当前版本的节点使用,node -v,以找到它

brew unlink node012
Run Code Online (Sandbox Code Playgroud)

这将更改为最新版本的节点。

brew link node
Run Code Online (Sandbox Code Playgroud)

注意:由于我收到此错误,此解决方案有效:

错误:没有这样的桶:/usr/local/Cellar/node


小智 5

尝试使用"n"Node 非常简单的包管理器.

> npm install -g n
Run Code Online (Sandbox Code Playgroud)

一旦安装了"n".您可以通过执行以下操作来提取最新节点:

> n latest
Run Code Online (Sandbox Code Playgroud)

我在Ubuntu 16.0x和MacOS 10.12(Sierra)上成功使用了它

参考:https://github.com/tj/n


Har*_*nan 5

如果您通过安装了当前节点Homebrew,则只需使用以下命令。

brew update
brew upgrade node
Run Code Online (Sandbox Code Playgroud)

通过以下方式检查节点版本

node -v


小智 5

我在这里尝试了一切,但显然,我使用了 nvm 来安装节点。所以我就跑了

nvm deactivate
Run Code Online (Sandbox Code Playgroud)

进而

brew install node
node -v
Run Code Online (Sandbox Code Playgroud)