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

Java-Selenium 4.18.1无法启动新会话问题求助

Selenium无法启动新会话问题排查

问题背景

此前使用Python版Selenium 4.9.0时,下载WebDriver后通过driver = webdriver.Edge(service=Service(path_to_webdriver))即可正常运行,但切换到Java编写代码时,出现无法启动新会话的问题,且Edge、Firefox浏览器均无法启动。

测试代码

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.edge.EdgeDriver;

public class Main {
    public static void main(String[] args) {
        System.setProperty("webdriver.edge.driver", "PATH TO WEB DRIVER");

        WebDriver driver = new EdgeDriver();

        driver.get("https://www.selenium.dev/selenium/web/web-form.html");
        
        driver.quit();
   }
}

报错信息

运行后抛出异常:

org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure. 
Host info: host: 'myuser', ip: '192.168.56.1'
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:537)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:233)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:162)
    at org.openqa.selenium.chromium.ChromiumDriver.<init>(ChromiumDriver.java:114)
    at org.openqa.selenium.edge.EdgeDriver.<init>(EdgeDriver.java:61)
    at org.openqa.selenium.edge.EdgeDriver.<init>(EdgeDriver.java:57)
    at org.openqa.selenium.edge.EdgeDriver.<init>(EdgeDriver.java:49)
    at org.openqa.selenium.edge.EdgeDriver.<init>(EdgeDriver.java:45)
    at com.aut.CoursesGrabber.main(CoursesGrabber.java:19)
Caused by: org.openqa.selenium.WebDriverException: Driver server process died prematurely.
Build info: version: '4.18.1', revision: 'b1d3319b48'
System info: os.name: 'Windows 11', os.arch: 'amd64', os.version: '10.0', java.version: '20'
Driver info: driver.version: EdgeDriver
    at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:246)
    at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:117)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:519)

已尝试操作

  • 将Edge浏览器及对应WebDriver更新至最新版本
  • 移除System.setProperty配置,使用Selenium 4.x内置的DriverManager机制(复制官方示例代码)
  • 更换为Firefox浏览器测试,问题依旧

可能原因及解决方向

  • 权限不足:Windows系统下,程序可能无足够权限启动浏览器或WebDriver。尝试以管理员身份运行IDE/编译后的程序,或检查WebDriver文件权限,确保当前用户拥有执行权限。
  • Java版本兼容问题:当前使用Java 20,Selenium 4.18.1对高版本Java可能存在兼容问题。建议降级到Java 17(LTS版本),这是Selenium官方推荐的兼容版本。
  • 安全软件拦截:杀毒软件或防火墙可能阻止WebDriver进程启动浏览器。临时关闭安全软件测试,或将WebDriver和浏览器路径添加到安全软件信任列表。
  • 浏览器路径未正确识别:即使移除System.setProperty,DriverManager可能无法自动识别浏览器路径,可手动指定:
    EdgeOptions options = new EdgeOptions();
    options.setBinary("C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe"); // 替换为实际路径
    WebDriver driver = new EdgeDriver(options);
    
  • 进程残留:之前的浏览器或WebDriver进程未完全退出,占用资源。打开任务管理器,结束所有msedge.exe、msedgedriver.exe(或geckodriver.exe)进程后重新测试。
  • 依赖冲突:项目中可能存在旧版本Selenium依赖或冲突库。检查Maven/Gradle依赖,确保仅引入selenium-java 4.18.1的完整依赖,无其他版本冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 12:33:20