You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法卸载Angular CLI旧版本,安装最新版后版本仍未更新求助

无法卸载/升级全局Angular CLI(关联NVM Node版本管理问题)

问题重现

我尝试用最新版Angular CLI创建Angular 6新项目,但始终无法完成升级。尝试卸载全局CLI后重新安装,卸载操作完全没生效:

  1. 在空文件夹执行ng -v,输出始终是旧版本:
Angular CLI: 1.5.4 Node: 9.4.0 OS: darwin x64 Angular: ...
  1. 执行了一系列卸载命令:
npm uninstall -g angular-cli
npm uninstall --save-dev angular-cli
npm uninstall -g @angular/cli
npm cache verify
  1. 再次执行ng -v,还是显示相同的1.5.4版本,没有提示"ng未找到"。
  2. 尝试安装最新版全局CLI:npm install -g @angular/cli@latest,版本依旧没变化。

环境信息

  • 操作均在无项目的空文件夹执行,无本地node_modules,所有命令都是全局(-g)
  • 系统:OSX,用NVM管理Node版本,当前激活版本是Node 9.4.0
  • 排查发现:在/Users/joshua/.nvm/versions/node/v6.11.5/lib/node_modules下有@angular/cli文件夹,但当前激活的v9.4.0目录下没有Angular相关文件

我不想删除其他Node版本下的CLI(担心破坏现有项目环境),也不想完全卸载NVM和Node,希望找到针对性的解决办法。


解决方案

这个问题的核心是NVM切换Node版本后,系统的ng命令指向了旧版本Node下的全局CLI,而非当前激活版本的。可以按以下步骤解决:

  1. 定位ng命令的实际路径
    在终端执行:

    which ng
    

    你会看到类似/Users/joshua/.nvm/versions/node/v6.11.5/bin/ng的路径,这说明当前ng是调用了v6.11.5版本下的CLI。

  2. 清理旧版本的ng可执行文件
    直接删除这个旧的ng文件:

    rm $(which ng)
    
  3. (可选)清理旧Node版本下的CLI(如果不需要保留)
    如果可以清理v6.11.5下的CLI,切换到该版本执行卸载:

    nvm use 6.11.5
    npm uninstall -g @angular/cli
    
  4. 在当前激活的Node版本下重新安装最新CLI
    切回v9.4.0,安装最新版:

    nvm use 9.4.0
    npm install -g @angular/cli@latest
    
  5. 验证结果
    执行ng -v,此时应该显示你安装的最新Angular CLI版本了。

补充说明

如果需要保留旧Node版本下的CLI,只需要执行步骤1、2、4即可——删除旧的ng可执行文件后,当前激活的Node版本下重新安装的CLI会成为系统默认调用的版本,不会影响其他Node版本的环境。

内容的提问来源于stack exchange,提问作者Joshua Ohana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:33:02