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

如何使用JSON配置文件单命令启动Selenium-Server Standalone 3.6.0

解决Selenium Standalone模式单命令启动(带自定义JAR和JSON配置)

我来帮你搞定这个问题!要在Selenium Server 3.6.0中以standalone角色同时启动hub和node,并且加载你的自定义代理JAR、使用JSON配置文件,完全不需要分开执行两条命令,一条命令就能实现。

核心命令

Linux/macOS系统

java -cp my_proxy.jar:selenium-server-standalone-3.6.0.jar org.openqa.grid.selenium.GridLauncherV3 -role standalone -hubConfig configHub.json -nodeConfig configNode.json

Windows系统

注意类路径分隔符用分号(;)代替冒号:

java -cp my_proxy.jar;selenium-server-standalone-3.6.0.jar org.openqa.grid.selenium.GridLauncherV3 -role standalone -hubConfig configHub.json -nodeConfig configNode.json

参数说明

  • -role standalone:这个参数是关键,它会让Selenium Server同时承担hub和node的职责,无需单独启动两个进程
  • -cp:指定类路径,把你的自定义代理JAR放在前面,确保Selenium优先加载你的自定义组件(比如额外servlet)
  • -hubConfig:指定hub的JSON配置文件,你之前配置的额外servlet就写在这里
  • -nodeConfig:指定node的JSON配置文件,包含浏览器实例、代理设置等节点相关配置

配置文件示例

Hub配置文件(configHub.json)

这里可以定义你需要的额外servlet:

{
  "servlets": ["com.yourteam.YourCustomServlet"],
  "port": 4444,
  "servletsMapping": {
    "/custom-endpoint/*": "com.yourteam.YourCustomServlet"
  },
  "newSessionWaitTimeout": -1
}

Node配置文件(configNode.json)

可以配置节点支持的浏览器、代理类等:

{
  "capabilities": [
    {
      "browserName": "chrome",
      "maxInstances": 3,
      "platform": "LINUX"
    },
    {
      "browserName": "firefox",
      "maxInstances": 2,
      "platform": "LINUX"
    }
  ],
  "proxy": "com.yourteam.YourCustomProxy",
  "maxSession": 5
}

注意事项

  1. 确保你的自定义JAR中的类全路径和配置文件里的一致,否则Selenium会找不到对应的组件
  2. 如果JSON配置文件里已经写了role字段,命令行的-role standalone会覆盖它,所以不用在JSON里重复设置角色
  3. 启动前检查端口(默认4444)是否被占用,避免启动失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:41:05