nodejs在使用n版本管理工具切换版本时无效

nodejs yekong

项目开发过程中,nodejs版本太低,所以准备使用nodejs版本管理器 n来切换一下版本,但是切换时切发现总是无法切换成功。

zhaowanjun@yekongdeiMac lin-cms-koa % n            
     copying : node/18.17.0
   installed : v18.17.0 to /usr/local/bin/node
      active : v16.20.0 at /Users/zhaowanjun/.nvm/versions/node/v16.20.0/bin/node

通过查询发现

根据您提供的信息,看起来您使用了 n 工具来安装和切换 Node.js 版本,但切换似乎没有生效。这可能是因为您同时使用了 nvm (Node Version Manager) 和 n 工具,导致了版本管理的冲突。以下是解决这个问题的步骤:

  1. 确认当前使用的 Node.js 版本:

    node -v
    
  2. 检查 nvm 是否在控制 Node.js 版本:

    which node
    

    如果输出路径包含 .nvm,则说明 nvm 正在控制 Node.js 版本。

  3. 使用 nvm 切换版本:

    nvm use 18.17.0
    
  4. 如果 nvm 没有 18.17.0 版本,先安装它:

    nvm install 18.17.0
    

    然后再使用 nvm use 18.17.0

  5. 设置默认版本:

    nvm alias default 18.17.0
    
  6. 验证版本切换是否成功:

    node -v
    
  7. 如果您希望完全使用 n 而不是 nvm,可以考虑卸载 nvm:

    rm -rf ~/.nvm
    

    然后编辑您的 shell 配置文件(如 .bashrc, .zshrc 等),删除所有与 nvm 相关的配置。

  8. 重新打开终端或运行 source ~/.bashrc (或相应的 shell 配置文件)使更改生效。

  9. 使用 n 切换版本:

    n 18.17.0
    

记住,混合使用不同的版本管理工具可能会导致冲突。建议选择一种工具(nvm 或 n)并坚持使用它来管理 Node.js 版本。如果您决定使用 nvm,可以考虑卸载 n 工具以避免潜在的冲突。

卸载 nvm后n就可以正常切换版本了。

喜欢