Hola Habr! Le presento la traducción del artículo
"Tutorial JavaFX: Primeros pasos" de Vojtech Ruzicka.
Cómo configurar y comenzar a usar JavaFX con Maven, Gradle o JavaFX SDK.
Todas las publicaciones en la serie JavaFX:
- Tutorial JavaFX: Primeros pasos
- Tutorial JavaFX: ¡Hola, mundo!
- Tutorial JavaFX: FXML y SceneBuilder
- Tutorial JavaFX: diseños básicos
- Tutorial JavaFX: diseños avanzados
- Tutorial JavaFX: estilo CSS
- JavaFX Weaver: integración de aplicaciones JavaFX y Spring Boot
Instalación de Java
JavaFX, por supuesto, requiere que tenga instalado JDK. Obtener las dependencias requeridas varía para las diferentes versiones de Java.
JavaFX se introdujo como parte del lanzamiento de Java 8. Sin embargo, más tarde se eliminó del JDK y
portado a un módulo separado en Java 11.
Esto significa que si está apuntando a Java 8-10, ya tiene todas las dependencias necesarias como parte de su JDK. ¡Hurra! Si está utilizando una versión más nueva de Java, es decir, 11+, debe obtener las dependencias por separado.
Maven
Obtener y administrar dependencias manualmente es bastante incómodo, y en una aplicación real rara vez lo haría. Es mucho mejor utilizar un sistema de gestión de dependencias como Maven o Gradle. De esa manera, simplemente puede declarar qué dependencias está utilizando y qué versiones, y el sistema se encargará del resto.
Arquetipo Maven
Por supuesto, puede configurar su proyecto Maven manualmente, desde cero. Sin embargo, es posible que prefiera una forma más conveniente de crear la estructura y el contenido del proyecto base para usar Maven.
Maven tiene el concepto de arquetipos, lo que esencialmente significa que puede crear diferentes tipos de proyectos a partir de una plantilla. Existen numerosos arquetipos para varios tipos de proyectos, y afortunadamente, hay un par para JavaFX. El arquetipo que puede elegir depende de la versión de Java que esté utilizando.
Puede leer más sobre los arquetipos de Maven en la siguiente publicación:
Tutorial de arquetipos de Maven .
Arquetipo Java 8
Puede usar
com.zenjava: javafx-basic-archetype , o puede encontrar otros arquetipos por su cuenta si este no le conviene.
Puede generar fácilmente un proyecto desde la línea de comandos utilizando Maven utilizando el arquetipo anterior:
mvn archetype:generate -DarchetypeGroupId=com.zenjava -DarchetypeArtifactId=javafx-basic-archetype
Alternativamente, puede crear un nuevo proyecto Maven desde un arquetipo directamente en su IDE.
Arquetipo Java 11
Para Java 11, puede usar
org.openjfx: javafx-archetype-simple .
Para crear un proyecto, simplemente ejecute:
mvn archetype:generate -DarchetypeGroupId=org.openjfx -DarchetypeArtifactId=javafx-archetype-simple
Ajuste manual de Maven
Si desea más control, puede configurar manualmente su proyecto Maven sin generarlo desde el arquetipo.
Primero necesitas dos componentes. El primero es
Maven Plugin para Java FX .
Simplemente agregue lo siguiente a su pom.xml:
<build> <plugins> <plugin> <groupId>org.openjfx</groupId> <artifactId>javafx-maven-plugin</artifactId> <version>0.0.3</version> <configuration> <mainClass>com.example.App</mainClass> </configuration> </plugin> </plugins> </build>
Tenga en cuenta que
<mainclass>
debe apuntar a su clase principal, que tiene un método principal y extiende javafx.application.Application. Hablaremos de esto en el próximo artículo de la serie.
La segunda parte agrega una dependencia para los
controles JavaFX :
<dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-controls</artifactId> <version>11.0.2</version> </dependency>
Gradle
Gradle actualmente
no admite la creación de proyectos directamente a partir de arquetipos .
Puede usar el
complemento de Arquetipo de Gradle no oficial y usar los arquetipos de Maven mencionados anteriormente.
Alternativamente, puede crear su proyecto usando Maven desde un arquetipo, y luego convertirlo en un proyecto Gradle usando el siguiente comando en el directorio que contiene su pom.xml:
gradle init
Gradle manual
Al igual que con Maven manual, debe agregar el complemento JavaFX:
plugins { id 'application' id 'org.openjfx.javafxplugin' version '0.0.8' }
Y la dependencia de los controles:
javafx { version = "11.0.2" modules = [ 'javafx.controls' ] }
JavaFX SDK
Hay otra posibilidad de usar JavaFX localmente. Puede descargar el SDK de JavaFX. Contiene todas las bibliotecas necesarias que luego puede vincular al proyecto en su IDE o agregar al classpath.
Esto puede ser útil cuando no está familiarizado con Gradle o Maven y solo para el desarrollo local.
Al distribuir su aplicación, esto se vuelve inconveniente, ya que debe asegurarse de incluir todas las dependencias necesarias.
Con esta opción, puede generar un proyecto sin Maven / Gradle en su IDE, que contiene todos los archivos necesarios. En IntelliJ IDEA, simplemente puede ir a:
File → New → Project → JavaFX
Lectura adicional
Código fuente de la aplicación Hello World JavaFX - GradleCódigo fuente de la aplicación Hello World JavaFX - MavenJavaFX 13 e IntelliJJavaFX 13 y NetBeansJavaFX 13 y EclipseQue sigue
Este artículo es el primero de una serie de JavaFX. En el siguiente, le mostraremos
cómo crear y ejecutar su primera aplicación JavaFX .