Documentação
Introdução ao JxBrowser
Este guia mostra como começar a trabalhar com o JxBrowser no seu projeto Gradle ou Maven tão rapidamente quanto possível.
Pré-requisitos
Certifique-se de que o seu sistema cumpre os requisitos de software e hardware.
Escolha a ferramenta de construção do seu projeto
Adicione o plugin JxBrowser Gradle ao seu arquivo de script de compilação build.gradle(.kts)
e configure a dependência do JxBrowser como mostrado abaixo:
plugins {
id 'com.teamdev.jxbrowser' version '1.2.1'
}
jxbrowser {
version '8.1.0'
}
dependencies {
implementation jxbrowser.crossPlatform
}
plugins {
id("com.teamdev.jxbrowser") version "1.2.1"
}
jxbrowser {
version = "8.1.0"
}
dependencies {
implementation(jxbrowser.crossPlatform)
}
Adicione o JxBrowser ao seu pom.xmlxml
como mostrado abaixo:
<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.1.0</version>
<type>pom</type>
</dependency>
</dependencies>
Escolha o software em que está/estará trabalhando
O exemplo simples a seguir demonstra como carregar uma página da Web, esperar até que ela seja carregada completamente e imprimir seu HTML:
// Inicializar o Chromium.
EngineOptions options = EngineOptions.newBuilder(HARDWARE_ACCELERATED)
.licenseKey("your license key")
.build();
Engine engine = Engine.newInstance(options);
// Criar uma instância Browser.
Browser browser = engine.newBrowser();
// Carregar uma página Web e aguardar até estar completamente carregada.
browser.navigation().loadUrlAndWait("https://html5test.teamdev.com/");
// Imprimir HTML da página Web carregada.
browser.mainFrame().ifPresent(frame -> System.out.println(frame.html()));
// Desligar o Chromium e libertar os recursos atribuídos.
engine.close();
// Inicializar o Chromium.
val options = EngineOptions.newBuilder(HARDWARE_ACCELERATED)
.licenseKey("your license key")
.build()
val engine = Engine.newInstance(options)
// Criar uma instância Browser.
val browser = engine.newBrowser()
// Carrega uma página Web e espera até que seja completamente carregada.
browser.navigation().loadUrlAndWait("https://html5test.teamdev.com/")
// Imprimir HTML da página Web carregada.
browser.mainFrame().ifPresent { frame -> println(frame.html()) }
// Desligar o Chromium e libertar os recursos atribuídos.
engine.close()
Veja o exemplo completo no GitHub.
Escolha o seu kit de ferramentas Java UI
Adicione a biblioteca JxBrowser Swing ao seu build.gradle
:
dependencies {
implementation jxbrowser.swing
}
dependencies {
implementation(jxbrowser.swing)
}
Please add the JxBrowser Swing library to your pom.xml
:
<dependency>
<groupId>com.teamdev.jxbrowser</groupId>
<artifactId>jxbrowser-swing</artifactId>
<version>8.1.0</version>
</dependency>
Agora você pode incorporar a componente Swing do JxBrowser na sua aplicação Java Swing, como mostrado abaixo:
// Inicializar o Chromium.
EngineOptions options = EngineOptions.newBuilder(HARDWARE_ACCELERATED)
.licenseKey("your license key")
.build();
Engine engine = Engine.newInstance(options);
// Criar uma instância Browser.
Browser browser = engine.newBrowser();
SwingUtilities.invokeLater(() -> {
JFrame frame = new JFrame("JxBrowser AWT/Swing");
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
// Desligar o Chromium e libertar os recursos atribuídos.
engine.close();
}
});
// Crie e incorpore o componente Swing BrowserView para exibir o conteúdo da Web.
frame.add(BrowserView.newInstance(browser));
frame.setSize(1280, 800);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
// Carregar uma página Web e aguardar até estar completamente carregada.
browser.navigation().loadUrl("https://html5test.teamdev.com/");
});
// Inicializar o Chromium.
val options = EngineOptions.newBuilder(RenderingMode.HARDWARE_ACCELERATED)
.licenseKey("your license key")
.build()
val engine = Engine.newInstance(options)
// Criar uma instância Browser.
val browser = engine.newBrowser()
SwingUtilities.invokeLater {
val frame = JFrame("JxBrowser AWT/Swing")
frame.addWindowListener(object: WindowAdapter() {
override fun windowClosing(e: WindowEvent) {
// Desligar o Chromium e libertar os recursos atribuídos.
engine.close()
}
})
// Crie e incorpore o componente Swing BrowserView para exibir o conteúdo da Web.
frame.add(BrowserView.newInstance(browser))
frame.setSize(1280, 800)
frame.setLocationRelativeTo(null)
frame.isVisible = true
// Carregar uma página Web e aguardar até estar completamente carregada.
browser.navigation().loadUrl("https://html5test.teamdev.com/")
}
Você deverá ver o seguinte resultado:
Não hesite em transferir e utilizar um projeto já configurado com a GUI Swing a partir de GitHub.
Adicione a biblioteca JxBrowser JavaFX ao seu build.gradle
:
dependencies {
implementation jxbrowser.javafx
}
dependencies {
implementation(jxbrowser.javafx)
}
Por favor adicione a biblioteca JxBrowser JavaFX ao seu pom.xml
:
<dependency>
<groupId>com.teamdev.jxbrowser</groupId>
<artifactId>jxbrowser-javafx</artifactId>
<version>8.1.0</version>
</dependency>
Agora você pode incorporar o controle JxBrowser JavaFX na sua aplicação JavaFX, como mostrado abaixo:
// Inicializar o Chromium.
EngineOptions options = EngineOptions.newBuilder(HARDWARE_ACCELERATED)
.licenseKey("your license key")
.build();
Engine engine = Engine.newInstance(options);
// Criar uma instância Browser.
Browser browser = engine.newBrowser();
// Carregar uma página Web e aguardar até estar completamente carregada.
browser.navigation().loadUrl("https://html5test.teamdev.com");
// Criar e incorporar o componente JavaFX BrowserView para apresentar o conteúdo da Web.
BrowserView view = BrowserView.newInstance(browser);
Scene scene = new Scene(new BorderPane(view), 1280, 800);
primaryStage.setTitle("JxBrowser JavaFX");
primaryStage.setScene(scene);
primaryStage.show();
// Desligar o Chromium e libertar os recursos atribuídos.
primaryStage.setOnCloseRequest(event -> engine.close());
// Inicializar o Chromium.
val options = EngineOptions.newBuilder(HARDWARE_ACCELERATED)
.licenseKey("your license key")
.build()
val engine = Engine.newInstance(options)
// Criar uma instância Browser.
val browser = engine.newBrowser()
// Carregar uma página Web e aguardar até estar completamente carregada.
browser.navigation().loadUrl("https://html5test.teamdev.com")
// Criar e incorporar o componente JavaFX BrowserView para apresentar conteúdo Web.
val view = BrowserView.newInstance(browser)
val scene = Scene(BorderPane(view), 1280.0, 800.0)
primaryStage.setTitle("JxBrowser JavaFX")
primaryStage.setScene(scene)
primaryStage.show()
// Desligar o Chromium e libertar os recursos atribuídos.
primaryStage.setOnCloseRequest { engine.close() }
Você deverá ver o seguinte resultado:
Sinta-se à vontade para transferir e utilizar um projeto já configurado com JavaFX GUI a partir de GitHub.
Adicione a biblioteca SWT do JxBrowser ao seu build.gradle
:
dependencies {
implementation jxbrowser.swt
}
dependencies {
implementation(jxbrowser.swt)
}
Adicione a biblioteca SWT do JxBrowser ao seu pom.xml
:
<dependency>
<groupId>com.teamdev.jxbrowser</groupId>
<artifactId>jxbrowser-swt</artifactId>
<version>8.1.0</version>
</dependency>
Agora você pode incorporar o widget JxBrowser SWT na sua aplicação Java SWT, como mostrado abaixo:
// Inicializar o Chromium.
EngineOptions options = EngineOptions.newBuilder(HARDWARE_ACCELERATED)
.licenseKey("your license key")
.build();
Engine engine = Engine.newInstance(options);
// Criar uma instância Browser.
Browser browser = engine.newBrowser();
// Carregar uma página Web e aguardar até estar completamente carregada.
browser.navigation().loadUrl("https://html5test.teamdev.com");
Display display = new Display();
Shell shell = new Shell(display);
shell.setText("JxBrowser SWT");
shell.setLayout(new FillLayout());
// Criar e incorporar o widget SWT BrowserView para apresentar conteúdo Web.
BrowserView view = BrowserView.newInstance(shell, browser);
view.setSize(1280, 800);
shell.pack();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
// Desligar o Chromium e libertar os recursos atribuídos.
engine.close();
display.dispose();
// Inicializar o Chromium.
val options = EngineOptions.newBuilder(HARDWARE_ACCELERATED)
.licenseKey("your license key")
.build()
val engine = Engine.newInstance(options)
// Criar uma instância Browser.
val browser = engine.newBrowser()
// Carregar uma página Web e aguardar até estar completamente carregada.
browser.navigation().loadUrl("https://html5test.teamdev.com")
val display = Display()
val shell = Shell(display)
shell.setText("JxBrowser SWT")
shell.setLayout(FillLayout())
// Criar e incorporar o widget SWT BrowserView para apresentar conteúdo Web.
val view = BrowserView.newInstance(shell, browser)
view.setSize(1280, 800)
shell.pack()
shell.open()
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep()
}
}
// Desligar o Chromium e libertar os recursos atribuídos.
engine.close()
display.dispose()
Você deverá ver o seguinte resultado:
Sinta-se à vontade para descarregar e utilizar um projeto já configurado com SWT GUI a partir de GitHub.
Adicione a biblioteca JxBrowser Compose ao seu build.gradle
:
dependencies {
implementation jxbrowser.compose
}
dependencies {
implementation(jxbrowser.compose)
}
Adicione a biblioteca JxBrowser Compose ao seu pom.xml
:
<dependency>
<groupId>com.teamdev.jxbrowser</groupId>
<artifactId>jxbrowser-compose</artifactId>
<version>8.1.0</version>
</dependency>
Agora você pode incorporar o controle JxBrowser Compose na sua aplicação Java Compose Desktop, como mostrado abaixo:
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.remember
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.WindowState
import androidx.compose.ui.window.singleWindowApplication
import com.teamdev.jxbrowser.dsl.Engine
import com.teamdev.jxbrowser.dsl.browser.navigation
import com.teamdev.jxbrowser.engine.RenderingMode.OFF_SCREEN
import com.teamdev.jxbrowser.view.compose.BrowserView
fun main() = singleWindowApplication(
title = "Compose Desktop BrowserView",
state = WindowState(width = 1280.dp, height = 800.dp),
) {
val engine = remember { Engine(OFF_SCREEN) }
val browser = remember { engine.newBrowser() }
BrowserView(browser)
LaunchedEffect(Unit) {
browser.navigation.loadUrl("https://html5test.teamdev.com")
}
}
Você deverá ver o seguinte resultado:
Sinta-se à vontade para transferir e utilizar um projeto já configurado com Compose Desktop GUI a partir de GitHub.
O que vem aí
- Leia como o JxBrowser funciona nos guias Arquitetura e Design.
- Consulte os nossos guias para saber mais sobre todas as funcionalidades do JxBrowser.
- Explore a API JxBrowser em documentação de referência.