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

使用Maven+Java的Selenium出现SLF4J类加载失败及SessionNotCreatedException求助

问题解决方案

一、SLF4J 加载失败问题

原因

你的项目依赖(比如Selenium)间接引入了SLF4J API,但缺少具体的日志实现绑定,导致抛出Failed to load class "org.slf4j.impl.StaticLoggerBinder"错误。

解决步骤

在pom.xml中添加任意一种SLF4J日志实现依赖即可:

  • 简单调试用的实现:
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>1.7.36</version> <!-- 版本与项目中SLF4J API版本保持一致 -->
</dependency>
  • 生产环境常用的Logback实现:
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.11</version>
</dependency>

添加后重新构建项目,该错误即可消除。

二、Selenium SessionNotCreatedException 问题

常见原因及解决方法

1. Chrome浏览器与Chromedriver版本不匹配

  • 查看Chrome版本:打开Chrome→设置→关于Chrome,获取版本号(如125.x.x.x)
  • 下载对应版本的Chromedriver,确保版本号与Chrome完全对应
  • 配置驱动:
    • 方式一:将Chromedriver放入系统PATH环境变量指向的目录
    • 方式二:代码中指定驱动路径:
System.setProperty("webdriver.chrome.driver", "你的Chromedriver绝对路径");
WebDriver driver = new ChromeDriver();

2. 驱动初始化方式过时(适用于Selenium 4.x+版本)

推荐使用WebDriverManager自动管理驱动,无需手动下载:

  • 先在pom.xml添加依赖:
<dependency>
    <groupId>io.github.bonigarcia</groupId>
    <artifactId>webdrivermanager</artifactId>
    <version>5.6.3</version>
</dependency>
  • 代码中替换初始化逻辑:
WebDriverManager.chromedriver().setup();
WebDriver driver = new ChromeDriver();

3. Chrome浏览器启动异常

  • 关闭所有Chrome进程后重新运行程序
  • 检查是否有杀毒软件拦截Chrome或Chromedriver
  • 尝试以管理员权限运行程序

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 09:33:21