Angular 6.0.2已稳定发布,npm安装报notarget错误,为何找不到对应版本?
解决Angular 6.0.2安装时的npm notarget错误
嘿,我之前也碰到过类似的问题,这大概率是npm缓存或者镜像同步的锅,咱们一步步来排查解决:
可能的问题根源
- 你的本地npm缓存还停留在旧版本的包信息里,没同步到Angular 6.x的最新数据
- 你用的第三方npm镜像源(比如国内镜像)同步官方仓库有延迟,导致找不到对应的
@angular/cdk@^6版本 - 另外,npm官网的页面偶尔会有缓存延迟,显示的不是实时的仓库版本状态,实际得以npm命令查询的结果为准
具体解决步骤
强制清理npm缓存
先把本地的旧缓存清掉,确保能拉取到最新的包信息:npm cache clean --force切换到官方npm源(如果用了第三方镜像)
很多第三方镜像同步官方仓库会慢半拍,暂时切回官方源试试:npm config set registry https://registry.npmjs.org/确认@angular/cdk的可用版本
用这条命令查看npm仓库里@angular/cdk的所有可用版本,确认是否已经有6.x版本:npm view @angular/cdk versions如果能看到6开头的版本,说明仓库里已经有了,接下来就能正常安装;如果还是看不到,那可能是CDK的6.x版本还没和Angular核心包同步发布(这种情况偶尔会发生,核心包先更新,配套包稍晚跟上)。
指定具体版本安装
如果确认有6.0.2版本,直接指定版本号安装,避免版本范围匹配的问题:npm install @angular/core@6.0.2 @angular/cdk@6.0.2 @angular/common@6.0.2 ...(把你需要的Angular包都列出来,确保所有包版本统一)
要是你用Angular CLI创建项目,也可以直接指定版本初始化:
ng new my-angular6-project --version=6.0.2
内容的提问来源于stack exchange,提问作者Ahmed Elkoussy
相关产品推荐
相关产品推荐

