Selenium Java报错:无法访问org.openqa.selenium.WebDriver(版本不兼容)
问题解决思路
错误原因分析
- Java版本不兼容:错误里的
version 55.0, should be 52.0是核心——55.0对应Java 11,52.0对应Java 8。你当前项目的编译/运行环境是Java 8,但Selenium 4.19.0及以上版本要求Java 11或更高版本。 - Selenium依赖版本不一致:你的
selenium-java是4.19.0,selenium-chrome-driver是4.21.0,版本不统一会引发额外的兼容性问题。
解决方案
方案1:升级Java版本(推荐)
Selenium新版本会修复大量bug,建议升级到Java 11或更高:
- 安装Java 11+,然后在IDE(IDEA/Eclipse)里把项目的Project SDK和Language Level设置为对应版本。
- 统一Selenium依赖版本,把
selenium-chrome-driver的版本改成和selenium-java一致(比如都用4.21.0),修改后的POM片段:
<!-- Selenium核心依赖,统一版本 --> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>4.21.0</version> </dependency> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-chrome-driver</artifactId> <version>4.21.0</version> </dependency> <!-- 其他依赖保持不变 --> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>7.10.2</version> <scope>test</scope> </dependency> <dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.8.0</version> </dependency>
方案2:降级Selenium到兼容Java 8的版本
如果不想升级Java,Selenium 4.4.0是最后一个支持Java 8的版本,同时要降级webdrivermanager到兼容版本:
<!-- 降级到Java 8兼容的Selenium版本 --> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>4.4.0</version> </dependency> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-chrome-driver</artifactId> <version>4.4.0</version> </dependency> <!-- 降级webdrivermanager到对应兼容版本 --> <dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>4.4.3</version> </dependency> <!-- TestNG保持不变 --> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>7.10.2</version> <scope>test</scope> </dependency>
后续操作
修改完POM后,执行mvn clean install清理并重新下载依赖,然后重新运行项目即可。
内容的提问来源于stack exchange,提问作者Moazzam Hussain
相关产品推荐
相关产品推荐

