Saltar al contenido

¿Cómo uso JavaFX 11 en Eclipse?

Después de tanto batallar ya encontramos el arreglo de este atasco que ciertos de nuestros lectores de este sitio tienen. Si quieres compartir algún dato no dejes de aportar tu información.

Solución:

Hay varios puntos en su publicación que necesitan aclaración. Intentaré responderlas en diferentes viñetas:

Pero por lo que entendí, (JavaFX) se excluyó de JDK 9.

JavaFX se desacoplará de JDK de Oracle comenzando JDK 11. Hago hincapié en Oracle JDK porque JavaFX nunca fue parte de OpenJDK. Ni siquiera en OpenJDK 8.

De hecho, estoy usando OpenJDK 11 en Ubuntu 18 (aunque eclipse escribe que tengo un entorno JavaSE 10, ahí es donde también estoy un poco confundido)

Para la compatibilidad con Java 11 en Eclipse, debe instalar el complemento Java 11 Support for Eclipse Photon.

Aquí hay algunos ejemplos sobre cómo ejecutar aplicaciones Java 11 en Eclipse

Instalé openjfx usando sudo apt install openjfx y no puedo hacer que eclipse funcione con JavaFX.

No estoy seguro de si tiene sentido no usar JDK 8 con JavaFX incluido, pero de todos modos, ¿cómo puedo usar JavaFX en tales condiciones en eclipse?

Dado que OpenJDK 11 u Oracle JDK 11 no se incluirán con JavaFX, su mejor opción es descargar el SDK de JavaFX desde aquí o aquí y cargarlos en su IDE.

Si está acostumbrado a crear herramientas, puede usar directamente los jars de tiempo de ejecución de JavaFX que están disponibles en Maven Central.

Para ver un tutorial sobre cómo ejecutar JavaFX 11 en OpenJDK 11, puede seguir:

  • Primeros pasos con JavaFX 11
  • JavaFX en JDK 11

JavaFX 11 y Eclipse

Al momento de escribir esta publicación, necesita Eclipse 4.9M3 para trabajar con JavaFX 11.

Una vez que tenga Eclipse, JDK 11 y JavaFX 11 SDK, puede optar por crear:

  • Proyecto basado en módulos
  • Proyecto no basado en módulos (No module-info.java requerido)

Proyecto basado en módulos

Cree un proyecto Java y agregue archivos jar de JavaFX desde el SDK de Java FX 11 a la ruta del módulo del proyecto.

ingrese la descripción de la imagen aquí

Crear un module.info y declarar su dependencia de javafx.controls módulo. javafx11 es el nombre del paquete que contiene su archivo Java.

module javafx11 
    requires javafx.controls;
    exports javafx11;

Ejecuta el programa o/

Proyecto no basado en módulos

Cree un proyecto Java y agregue archivos jar de JavaFX desde el SDK de Java FX 11 a o el module-path o classpath del proyecto.

Agregue los siguientes argumentos de JVM a la configuración de ejecución del proyecto:

--module-path=path-to-javafx-skd/lib --add-modules=javafx.controls

Ejecuta el programa o/

tl; dr

Para comenzar más fácilmente con JavaFX, use la versión de marca Oracle de Java 8 donde JavaFX 8 está integrado y fácilmente disponible.

Para detalles técnicos, consulte Usando JavaFX en JRE 8. mira a la Vinculado y Relacionada secciones de la página web para muchas publicaciones relacionadas.

Modularización de Java

La plataforma Java está en proceso de una reformulación radical, conocida como modularización.

Anteriormente, Java SE (edición estándar) era un gran monolito de software, en constante crecimiento con más y más agregados. Ninguna aplicación lo usa todo.

Se tomó la decisión de dividir Java SE en muchos fragmentos separados para definirlos formalmente como “módulos”. Un beneficio importante es que una aplicación puede incluirse con un tiempo de ejecución de Java SE compuesto solo por los módulos que realmente se necesitan, y se omiten los módulos no utilizados. Ver el jlink herramienta.

Como subproducto de esta modularización, algunas partes más antiguas y menos populares, como CORBA, se están descartando para que ya no se incluyan como una parte estándar de Java (aunque se ofrecen para que otras partes las recojan si así lo deciden). De manera similar, algunos módulos relacionados con Java EE se eliminarán de Java SE y se entregarán al proyecto Jakarta EE, lógicamente un hogar más apropiado. Ver JEP 320: Eliminar los módulos Java EE y CORBA.

El proceso de modularización y reorganización es un esfuerzo continuo de años. Se hizo mucho en Java 9 y Java 10. Algunos de los pasos finales se están realizando en Java 11.

Uno de estos pasos que se están tomando en Java 11 es dejar de agrupar JavaFX con Java SE. Ver:

  • Él Trabajo futuro sección de la JavaFX página de wikipedia
  • La publicación de blog de Oracle 2018-03, El futuro de JavaFX y otras actualizaciones de la hoja de ruta del cliente Java
  • El libro blanco de Oracle 2018-03, Actualización de la hoja de ruta del cliente Java
  • El curso, Que vivas en tiempos interesantes

Por lo tanto, comenzar con el desarrollo de JavaFX ahora mismo será más fácil si se hace con Java 8. Las bibliotecas de JavaFX se incluyen con Java 8. Y no es necesario que aprenda acerca de la modularización, ni que tenga que lidiar con su IDE (como Eclipse) y la configuración del proyecto para reconocer módulos. Si no tiene una necesidad apremiante de usar las últimas versiones de Java o JavaFX, quédese con 8 hasta que el proceso de modularización y las herramientas se suavicen, probablemente el próximo año 2019.

Si insiste en usar Java 11, necesita aprender sobre:

  • Modularización de Java en general, incluyendo la módulo-info.java expediente.
  • Actualizar su IDE (Eclipse, etc.) y otras herramientas a versiones posteriores compatibles con la modularización y Java 11.
  • Configuración de módulos en sus herramientas de compilación, como Maven o Gradle
  • Configuración de módulos en su IDE, como Eclipse
  • Descargar módulos JavaFX o usar un administrador de dependencias como Maven para hacerlo

Esos puntos son demasiado para cubrir aquí, y se han cubierto en muchas otras preguntas sobre el desbordamiento de pila. Además, Java 11 aún no se ha lanzado formalmente.

Quizás este artículo te ayude, Cómo crear un proyecto con JavaFX en JDK 11.

Para obtener más información sobre la modularización de Java, lea el blog y el libro, El sistema de módulos de Javade Nicolai Parlog.

Valoraciones y comentarios

Si te ha sido útil nuestro artículo, agradeceríamos que lo compartas con otros programadores así nos ayudas a extender esta información.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *