Mac系统安装@angular/cli(Angular5+)报错,请求解决方法
解决Mac上安装Angular 5+ CLI时的ETARGET错误问题
我来帮你搞定这个安装报错的问题!从你给出的错误日志来看,问题出在你的Node.js和npm版本太老旧,导致无法正确解析Angular CLI依赖包的版本要求。
错误原因分析
你当前使用的是Node v6.11.1和npm v3.10.10,这两个版本都已经停止维护了。错误日志里提到的require-from-string@^1.1.0找不到,是因为这个版本的包已经不再兼容Node v6,而npm v3的依赖解析逻辑也无法处理新的包版本范围,最终导致安装失败。
具体解决步骤
第一步:升级Node.js和npm到兼容版本
Angular 5+对应的Angular CLI(推荐1.x系列版本)需要至少Node 6.9.0,但更稳妥的是升级到Node 10.x(LTS长期支持版本)——因为Node 6已经完全淘汰,很多依赖包不再支持它。
在Mac上最方便的方式是用nvm(Node版本管理器)来管理:- 先通过Homebrew安装nvm:
brew install nvm - 按照终端提示,把nvm的初始化代码添加到你的shell配置文件(比如
~/.bash_profile或~/.zshrc),然后重启终端或者执行source ~/.bash_profile(对应你的配置文件)使配置生效。 - 安装Node 10.x版本:
nvm install 10 - 切换到这个版本:
nvm use 10
此时npm会自动升级到兼容的6.x版本,你可以用npm -v确认版本。
- 先通过Homebrew安装nvm:
第二步:清理npm缓存
旧的缓存可能会干扰安装,执行命令清理:npm cache clean --force第三步:重新安装对应版本的Angular CLI
为了和Angular 5完美兼容,我们安装1.x系列的最新稳定版CLI:npm install -g @angular/cli@1.7.4验证安装
安装完成后,执行ng -v,如果看到Angular CLI版本和Node版本正常显示,就说明安装成功了。之后你就可以用ng new命令创建Angular 5项目啦。
内容的提问来源于stack exchange,提问作者user2024080
相关产品推荐
相关产品推荐

