文档
开始使用 JxBrowser
本指南展示了如何在 Gradle 或 Maven 项目中快速开始使用 JxBrowser。
前提条件
请确保您的系统满足软件和硬件要求。
选择您的项目构建工具
请将 JxBrowser Gradle 插件添加到您的构建脚本文件 build.gradle(.kts)
中,并配置 JxBrowser 依赖项,如下所示:
plugins { id 'com.teamdev.jxbrowser' version '1.1.0' } jxbrowser { version '8.0.0-eap.4' } dependencies { implementation jxbrowser.crossPlatform }
plugins { id("com.teamdev.jxbrowser") version "1.1.0" } jxbrowser { version = "8.0.0-eap.4" } dependencies { implementation(jxbrowser.crossPlatform) }
请将 JxBrowser 添加到您的 pom.xml
中,如下所示:
<repositories> <repository> <id>com.teamdev</id> <url>https://europe-maven.pkg.dev/jxbrowser/releases</url> </repository> </repositories> <dependencies> <dependency> <groupId>com.teamdev.jxbrowser</groupId> <artifactId>jxbrowser-cross-platform</artifactId> <version>8.0.0-eap.4</version> <type>pom</type> </dependency> </dependencies>
选择您正在或将要使用的软件
以下简单示例展示了如何加载一个网页,等待其完全加载完成后,打印其 HTML 内容:
// 初始化 Chromium。 EngineOptions options = EngineOptions.newBuilder(HARDWARE_ACCELERATED) .licenseKey("您的许可证密钥") .build(); Engine engine = Engine.newInstance(options); // 创建一个 Browser 实例。 Browser browser = engine.newBrowser(); // 加载一个网页并等待其完全加载。 browser.navigation().loadUrlAndWait("https://html5test.teamdev.com/"); // 打印已加载网页的 HTML 内容。 browser.mainFrame().ifPresent(frame -> System.out.println(frame.html())); // 关闭 Chromium 并释放分配的资源。 engine.close();
// 初始化 Chromium。 val options = EngineOptions.newBuilder(HARDWARE_ACCELERATED) .licenseKey("您的许可证密钥") .build() val engine = Engine.newInstance(options) // 创建一个 Browser 实例。 val browser = engine.newBrowser() // 加载一个网页并等待其完全加载。 browser.navigation().loadUrlAndWait("https://html5test.teamdev.com/") // 打印已加载网页的 HTML 内容。 browser.mainFrame().ifPresent { frame -> println(frame.html()) } // 关闭 Chromium 并释放分配的资源。 engine.close()
在 GitHub 上查看完整示例。
选择您的 Java UI 工具包
请将 JxBrowser Swing 库添加到您的 build.gradle
中:
dependencies { implementation jxbrowser.swing }
dependencies { implementation(jxbrowser.swing) }
请将 JxBrowser Swing 库添加到您的 pom.xml
中:
<dependency> <groupId>com.teamdev.jxbrowser</groupId> <artifactId>jxbrowser-swing</artifactId> <version>8.0.0-eap.4</version> </dependency>
现在您可以将 JxBrowser Swing 组件嵌入到您的 Java Swing 应用程序中,如下所示:
// 初始化 Chromium。 EngineOptions options = EngineOptions.newBuilder(HARDWARE_ACCELERATED) .licenseKey("您的许可证密钥") .build(); Engine engine = Engine.newInstance(options); // 创建一个 Browser 实例。 Browser browser = engine.newBrowser(); SwingUtilities.invokeLater(() -> { JFrame frame = new JFrame("JxBrowser AWT/Swing"); frame.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { // 关闭 Chromium 并释放分配的资源。 engine.close(); } }); // 创建并嵌入 Swing 的 BrowserView 组件以显示网页内容。 frame.add(BrowserView.newInstance(browser)); frame.setSize(1280, 800); frame.setLocationRelativeTo(null); frame.setVisible(true); // 加载所需网页。 browser.navigation().loadUrl("https://html5test.teamdev.com/"); });
// 初始化 Chromium。 val options = EngineOptions.newBuilder(RenderingMode.HARDWARE_ACCELERATED) .licenseKey("您的许可证密钥") .build() val engine = Engine.newInstance(options) // 创建一个 Browser 实例。 val browser = engine.newBrowser() SwingUtilities.invokeLater { val frame = JFrame("JxBrowser AWT/Swing") frame.addWindowListener(object: WindowAdapter() { override fun windowClosing(e: WindowEvent) { // 关闭 Chromium 并释放分配的资源。 engine.close() } }) // 创建并嵌入 Swing 的 BrowserView 组件以显示网页内容。 frame.add(BrowserView.newInstance(browser)) frame.setSize(1280, 800) frame.setLocationRelativeTo(null) frame.isVisible = true // 加载所需网页。 browser.navigation().loadUrl("https://html5test.teamdev.com/") }
您应该会看到以下输出:
![Swing BrowserView](/jxbrowser/zh/img/articles/awt-swing-view.png)
您可以随时从 GitHub 下载和使用已配置好的带有 Swing GUI 的项目。
请将 JxBrowser JavaFX 库添加到您的 build.gradle
中:
dependencies { implementation jxbrowser.javafx }
dependencies { implementation(jxbrowser.javafx) }
请将 JxBrowser JavaFX 库添加到您的 pom.xml
中:
<dependency> <groupId>com.teamdev.jxbrowser</groupId> <artifactId>jxbrowser-javafx</artifactId> <version>8.0.0-eap.4</version> </dependency>
现在您可以将 JxBrowser JavaFX 控件嵌入到您的 JavaFX 应用程序中,如下所示:
// 初始化 Chromium。 EngineOptions options = EngineOptions.newBuilder(HARDWARE_ACCELERATED) .licenseKey("您的许可证密钥") .build(); Engine engine = Engine.newInstance(options); // 创建一个 Browser 实例。 Browser browser = engine.newBrowser(); // 加载所需网页。 browser.navigation().loadUrl("https://html5test.teamdev.com"); // 创建并嵌入 JavaFX 的 BrowserView 组件以显示网页内容。 BrowserView view = BrowserView.newInstance(browser); Scene scene = new Scene(new BorderPane(view), 1280, 800); primaryStage.setTitle("JxBrowser JavaFX"); primaryStage.setScene(scene); primaryStage.show(); // 关闭 Chromium 并释放分配的资源。 primaryStage.setOnCloseRequest(event -> engine.close());
// 初始化 Chromium。 val options = EngineOptions.newBuilder(HARDWARE_ACCELERATED) .licenseKey("您的许可证密钥") .build() val engine = Engine.newInstance(options) // 创建一个 Browser 实例。 val browser = engine.newBrowser() // 加载所需网页。 browser.navigation().loadUrl("https://html5test.teamdev.com") // 创建并嵌入 JavaFX 的 BrowserView 组件以显示网页内容。 val view = BrowserView.newInstance(browser) val scene = Scene(BorderPane(view), 1280.0, 800.0) primaryStage.setTitle("JxBrowser JavaFX") primaryStage.setScene(scene) primaryStage.show() // 关闭 Chromium 并释放分配的资源。 primaryStage.setOnCloseRequest { engine.close() }
您应该会看到以下输出:
![JavaFX BrowserView](/jxbrowser/zh/img/articles/javafx-view.png)
您可以随时从 GitHub 下载和使用已配置的好的带有 JavaFX GUI 的项目。
请将 JxBrowser SWT 库添加到您的 build.gradle
中:
dependencies { implementation jxbrowser.swt }
dependencies { implementation(jxbrowser.swt) }
请将 JxBrowser SWT 库添加到您的 pom.xml
中:
<dependency> <groupId>com.teamdev.jxbrowser</groupId> <artifactId>jxbrowser-swt</artifactId> <version>8.0.0-eap.4</version> </dependency>
现在您可以将 JxBrowser SWT 小部件嵌入到您的 Java Swing 应用程序中,如下所示:
// 初始化 Chromium。 EngineOptions options = EngineOptions.newBuilder(HARDWARE_ACCELERATED) .licenseKey("您的许可证密钥") .build(); Engine engine = Engine.newInstance(options); // 创建一个 Browser 实例。 Browser browser = engine.newBrowser(); // 加载所需页面。 browser.navigation().loadUrl("https://html5test.teamdev.com"); Display display = new Display(); Shell shell = new Shell(display); shell.setText("JxBrowser SWT"); shell.setLayout(new FillLayout()); // 创建并嵌入 SWT 的 BrowserView 小部件以显示网页内容。 BrowserView view = BrowserView.newInstance(shell, browser); view.setSize(1280, 800); shell.pack(); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } // 关闭 Chromium 并释放分配的资源。 engine.close(); display.dispose();
// 初始化 Chromium。 val options = EngineOptions.newBuilder(HARDWARE_ACCELERATED) .licenseKey("您的许可证密钥") .build() val engine = Engine.newInstance(options) // 创建一个 Browser 实例。 val browser = engine.newBrowser() // 加载所需页面。 browser.navigation().loadUrl("https://html5test.teamdev.com") val display = Display() val shell = Shell(display) shell.setText("JxBrowser SWT") shell.setLayout(FillLayout()) // 创建并嵌入 SWT 的 BrowserView 小部件以显示网页内容。 val view = BrowserView.newInstance(shell, browser) view.setSize(1280, 800) shell.pack() shell.open() while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep() } } // 关闭 Chromium 并释放分配的资源。 engine.close() display.dispose()
您应该会看到以下输出:
![SWT BrowserView](/jxbrowser/zh/img/articles/swt-view.png)
您可以随时从 GitHub 下载和使用已配置好的带有 SWT GUI 的项目。