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

执行mvn clean后AndroidDriver初始化失败 报Platform强转String异常

问题原因

该类转换异常是Selenium依赖版本与Appium Java客户端版本不兼容导致的。
执行mvn clean时Maven自动拉取了未做版本锁定的最新传递依赖,将Selenium升级到了和当前项目所用Appium客户端不匹配的高版本:高版本Selenium内部处理platformName字段时会直接读取org.openqa.selenium.Platform类型的枚举值,而旧版本Appium客户端初始化AndroidDriver时仍按字符串类型传入平台参数,触发类型强转失败。
这也是未修改业务代码、之前运行正常,执行clean后突然报错的核心原因——Maven自动升级了未锁定版本的传递依赖。

修复方案

按优先级选择对应方案即可:

  • 快速回退方案(无需修改代码):在项目pom.xml中显式声明Selenium依赖,将版本锁定为一周前正常运行时的对应版本(通常Appium Java Client 7.x对应Selenium 3.141.59,Appium Java Client 8.x对应Selenium 4.x兼容版本),避免Maven自动拉取不匹配的高版本。配置完成后执行mvn clean test即可恢复运行。
  • 长期适配方案:修改能力参数传参逻辑,导入org.openqa.selenium.Platform包,将原代码中字符串形式的platformName配置替换为枚举传参:
// 替换原代码 cap.setCapability("platformName", "Android");
cap.setCapability("platformName", Platform.ANDROID);

修改后锁定Selenium与Appium客户端的兼容版本,再执行测试即可。

排查辅助命令:执行mvn dependency:tree可以查看当前项目实际引入的Selenium、Appium客户端版本,快速确认版本匹配关系。

内容的提问来源于stack exchange,提问作者André Kuljis

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 06:09:29