无头模式

在无头 Linux 系统中启动 X 服务器 

Fuzio 库可以在无头 Linux 环境中使用,前提是 X 服务器(X Server)正在运行。

以下是启动 X 服务器的方法:

1. 安装 Xvfb 服务器 

在您的无头 Linux 系统中,例如 Ubuntu Server 16.04.2 LTS:

sudo apt-get install xvfb

2. 运行你的 Java 应用程序 

通过启动独立的 X 服务器:

Xvfb :1 -screen 0 800x600x24+32 &
export DISPLAY=:1
java -jar application.jar

或者使用 xvfb-run 命令:

xvfb-run --server-args="-screen 0 800x600x24+32" java -jar application.jar

必须指定屏幕尺寸和颜色深度。

关于“无头”启动参数 

Chromium 58 及更高版本支持 --headless 命令行参数,但该参数仅适用于 Linux 平台。

该参数允许在 Linux 无头环境中运行 Chromium,而无需启动 X 服务器。该参数主要用于以下场景:在无头环境中运行 Chromium、加载某个 URL,并通过 --remote-debugging-port 参数使用 DevTools 连接已加载的网页。例如:

chrome --headless --remote-debugging-port=9222 https://chromium.org

在这种情况下,你可以在浏览器中打开 localhost:9222 页面,并通过 DevTools 操作已加载的网页。

如你所见,--headless 命令行参数的设计目标是加载单个网页并通过 DevTools 进行操作。我们在检查 Chromium 源代码后发现,该参数会强制 Chromium 使用一个独立且功能受限的 Chromium API 版本,而该版本不支持 Fuzio 中使用的大多数(约 80–90%)功能。

这意味着该参数会禁用 Fuzio 的大部分功能,例如通过 URL 或 HTML 加载不同网页、前进后退导航、执行 JavaScript 等。

因此,Fuzio 支持该参数。我们建议在无头 Linux 环境中使用 Fuzio 时启动 X 服务器。

微信咨询

即库客服

微信公众号二维码

技术客服

微信公众号二维码