node.js - 节点版本不会使用 n 更新
问题描述
为了提供一些背景信息,我使用这篇 Medium 帖子设置我的机器,不要使用sudo
... npm
still。
我在brew
大约一年半前安装了 Node,它安装了 v12.18.1。我n
当时也使用安装brew
,但直到现在才需要更改版本。
我的.zshrc
文件包括以下内容:
# For globally installed npm packages (without using sudo)
export PATH="$HOME/.npm/bin:$PATH"
# Path to n (managing node versions)
export N_PREFIX="$HOME/.n"
export PATH="$PATH:$N_PREFIX/bin"
当我安装 Node v14 时n
,会发生以下情况:
➜ ~ node -v
v12.18.1
➜ ~ n 14
installed : v14.15.4 to /Users/myusername/.n/bin/node
active : v12.18.1 at /usr/local/bin/node
➜ ~ node -v
v12.18.1
我看到版本安装成功;但是,活动版本不会更新。我注意到已安装版本的路径明显不同于活动版本(上面的参考终端输出),我怀疑这是问题所在。
任何帮助将不胜感激!先感谢您。
附加信息:当我最初安装 Node 时,yarn
尽管顶部链接的文章指出它应该是不可用的,但我n
使用brew
. 为了进行故障排除,我运行了brew uninstall n
,但是输出了以下内容:
Warning: The following may be n configuration files and have not been removed!
If desired, remove them manually with `rm -rf`:
/usr/local/etc/bash_completion.d
于是我跑了rm -rf /usr/local/etc/bash_completion.d
。之后没有打印到终端。
解决方案
问题是您已node
安装到两个位置,而正在安装的位置是变量n
中的最后一个。PATH
出于兴趣,您可以运行n doctor
它,它应该会解决这个问题。
您可以卸载安装到的节点副本/usr/local/bin/node
,或重新排列您的PATH
. 代替:
export PATH="$PATH:$N_PREFIX/bin"
尝试:
export PATH="$N_PREFIX/bin:$PATH"
推荐阅读
- flutter - 颤振:如何更新gridview中的一项?
- java - Spring - 5 getAuthorities() 仍然使用“ROLE_”前缀
- hpc - Snakemake:奇点参数 --home 和 --bind 默认设置,但在 HPC 上不允许
- c# - 如何使用泛型使这个 FSM 更加灵活?
- r - 使用 R 中的数据表计算数字系列的分位数的问题
- c++ - 将指针转换为 int 实际上会以字节或其他形式返回它的位置吗?
- swift - 在 RxDataSources 中对 SectionModelType 的“Self”要求进行初始化
- powershell - 使用加密密码发送邮件失败
- swift - 仅在关闭时快速打开自定义弹出窗口
- windows - 使用键盘 TAB 访问 IE 下载窗口中的下载