Tutorial: JavaFX en IntelliJ IDEA
Opción 1: Crear un proyecto desde cero
-
New Project
- A la izquierda seleccionar Maven archetype
- Catalog: Maven Central
- Archetype:
org.openjfx:javafx-archetype-simple
(oorg.openjfx:javafx-archetype-fxml
). javafx-version
:22
(o la última disponible, revisar en https://gluonhq.com/products/javafx/)- Click en Create
-
Notar que se creó el archivo
App.java
que contiene la funciónmain
. Observar el código que crea una ventana simple con un texto.var label = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + "."); var scene = new Scene(new StackPane(label), 640, 480); stage.setScene(scene); stage.show();
-
Ejecutar el programa.
Debería mostrarse la ventana con el texto.
Opción 2: Agregar JavaFX a un proyecto existente
-
Agregar las dependencias correspondientes en Maven:
En el
pom.xml
: click derecho → Generate → DependencyEn el cuadro de búsqueda ingresar
openjfx:javafx
.Seleccionar
javafx-controls
versión22
(o la última disponible, revisar en https://gluonhq.com/products/javafx/). Click en Add.Notar que en el
pom.xml
se agregó:<dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-controls</artifactId> <version>22</version> <scope>compile</scope> </dependency>
Según sea necesario, se pueden agregar las dependencias opcionales:
javafx-media
si se desea reproducir audio o video.javafx-fxml
si se desea utilizar archivos FXML.
-
Click derecho en
pom.xml
→ Maven → Reload project -
Reemplazar la clase
Main
por una clase que extiendejavafx.application.Application
:public class HolaMundo extends Application { @Override public void start(Stage stage) throws Exception { var label = new Label("Hola mundo!"); var scene = new Scene(new StackPane(label), 640, 480); stage.setScene(scene); stage.show(); } }
-
En el
pom.xml
agregar:<build> <plugins> <plugin> <groupId>org.openjfx</groupId> <artifactId>javafx-maven-plugin</artifactId> <version>0.0.8</version> <configuration> <mainClass>HolaMundo</mainClass> </configuration> </plugin> </plugins> </build>
Notar que en la línea
<mainClass>
el nombre de la clase debe coincidir con la clase creada en el punto anterior. -
Para ejecutar el programa:
Abrir la pestaña Maven
Doble click en Plugins → javafx →
javafx:run
En la esquina superior derecha de la pantalla se puede seleccionar
javafx:run
para que se ejecute por defecto esta opción al presionar el botón “play” (⏵).