Angular 13.2.0升级至16.0.0时遭遇selenium-webdriver安装404错误
解决Angular 13升级到16时selenium-webdriver安装404错误的方案
问题核心分析
你的package.json里devDependencies中手动指定了selenium-webdriver@4.0.0和@types/selenium-webdriver@3.0.22,版本不匹配;同时你的私有npm源可能未同步该版本包,导致安装时404。另外Angular 16的测试体系已不再依赖手动安装selenium-webdriver,所以可以直接移除相关依赖。
具体解决步骤
1. 清理旧的selenium相关依赖
编辑你的package.json,删除devDependencies中的以下两行:
"selenium-webdriver":"4.0.0", "@types/selenium-webdriver":"3.0.22",
同时注意统一现有Angular包版本:将@angular/router的版本从^13.1.3改为^13.2.0,确保所有Angular核心包版本一致,避免升级冲突。
2. 清理npm缓存
执行命令清除本地npm缓存,避免缓存的无效包信息干扰:
npm cache clean --force
3. 分步执行Angular升级
严格按照官方指南分步升级,不要直接跨版本从13到16:
- 先升级到Angular 14:
ng update @angular/core@14 @angular/cli@14 - 再升级到Angular 15:
ng update @angular/core@15 @angular/cli@15 - 最后升级到Angular 16:
ng update @angular/core@16 @angular/cli@16
4. 处理私有源包缺失问题(如果上述步骤仍报错)
如果私有npm源确实没有selenium-webdriver@4.0.0,可以临时切换到公共npm源完成安装:
npm config set registry https://registry.npmjs.org/ # 执行升级或安装命令 npm install # 完成后切回私有源 npm config set registry 你的私有源地址
或者联系私有npm源管理员,同步selenium-webdriver@4.0.0包到私有仓库。
内容的提问来源于stack exchange,提问作者user1015388
相关产品推荐
相关产品推荐

