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

使用WebDriverManager 5.0.3时出现Selenium内部类NotFound异常如何解决

问题原因
  • WebDriverManager 5.0.3版本仅适配Selenium 3.x系列API,而你使用的Selenium 4.1.0属于Selenium 4大版本,Selenium 4官方已经移除了org.openqa.selenium.internal包下的Require、FindsById等类,WebDriverManager调用这些已删除的旧API时就会抛出类不存在的异常。
  • 额外引入的selenium-api属于冗余依赖,selenium-java本身已经包含了对应版本的selenium-api,重复声明反而可能引发依赖版本冲突。
解决方案

你可以根据业务场景二选一:

方案1(推荐):升级WebDriverManager版本

WebDriverManager从5.1.0版本开始正式支持Selenium 4,将WebDriverManager升级到5.1.0及以上的稳定版即可解决兼容性问题,同时删除冗余的selenium-api依赖。
修改后的pom依赖示例:

<dependency>
    <groupId>io.github.bonigarcia</groupId>
    <artifactId>webdrivermanager</artifactId>
    <version>5.6.2</version> <!-- 可替换为最新稳定版 -->
</dependency>
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>4.1.0</version>
</dependency>

方案2:降级Selenium版本

如果必须保留WebDriverManager 5.0.3版本,将Selenium版本降级到3.x系列的最终稳定版即可适配:

<dependency>
    <groupId>io.github.bonigarcia</groupId>
    <artifactId>webdrivermanager</artifactId>
    <version>5.0.3</version>
</dependency>
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>3.141.59</version>
</dependency>
验证操作

修改依赖后如果仍有报错,可执行mvn dependency:tree命令检查项目中是否存在多版本Selenium依赖冲突,清理本地Maven缓存后重新构建即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 04:57:05