1

我正在使用 Mac Big Sur。我想降级 Node.js 的版本。我尝试了以下(不使用 sudo 安装会出现权限错误)……</p>

$ sudo n 14.15.1
   installed : v14.15.1 to /usr/local/bin/node
      active : v14.17.6 at /usr/local/opt/node@14/bin/node

但是当我检查时我仍然得到当前版本

$ node -v
v14.17.6

Fwiw,这就是我看到的“哪个节点”</p>

$ which node
/usr/local/opt/node@14/bin/node

编辑:我的 $PATH 当我运行 'echo $PATH' ...

/usr/local/opt/node@14/bin:/Users/davea/.rvm/gems/ruby-2.7.1/bin:/Users/davea/.rvm/gems/ruby-2.7.1@global/bin:/Users/davea/.rvm/rubies/ruby-2.7.1/bin:/usr/local/opt/node@14/bin:/Users/davea/.nvm/versions/node/v14.18.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.rvm/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.rvm/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.rvm/bin

编辑 2:普通用户和 sudo 用户的 PATH 变量...

$ env | grep PATH
PATH=/Users/davea/.rvm/gems/ruby-2.7.1/bin:/Users/davea/.rvm/gems/ruby-2.7.1@global/bin:/Users/davea/.rvm/rubies/ruby-2.7.1/bin:/Users/davea/.nvm/versions/node/v14.18.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.rvm/bin

$ sudo env | grep PATH
PATH=/Users/davea/.rvm/gems/ruby-2.7.1/bin:/Users/davea/.rvm/gems/ruby-2.7.1@global/bin:/Users/davea/.rvm/rubies/ruby-2.7.1/bin:/Users/davea/.nvm/versions/node/v14.18.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.cabal/bin:/Users/davea/.ghcup/bin:/Users/davea/.rvm/bin
4

2 回答 2

2

n消息告诉您它刚刚“安装”的版本和“活动”的版本不同。您安装了两个版本的节点,活动版本是PATH.

活动版本是/usr/local/opt/node@14/bin/node. 我不认识那个路径,不确定是用来安装什么的。它必须在您的PATH变量中,并且您的登录脚本中可能有关于添加/usr/local/opt/node@14/binPATH?

要使n安装的节点版本成为活动版本,您可以删除节点的另一个副本,或者/usr/local/bin更早地放入PATH以便首先找到它,或者最简单地/usr/local/opt/node@14/bin从 PATH 变量中删除。

于 2021-12-10T04:04:06.233 回答
0

如果您要使用多个节点版本,例如 at nvm

nvm install <version>

更改版本:

nvm use <version>

文件:

https://github.com/nvm-sh/nvm

于 2021-12-10T04:51:45.107 回答