No soy un desarrollador. Con OpenJDK y javafx instalados, la variable 'ruta' del entorno configurada, estoy tratando de iniciar y usar una herramienta de escritorio de Windows basada en Java que actualmente se ejecuta con Oracle JDK 1.8
Dado que Oracle JDK tiene licencia para uso comercial, estoy tratando de averiguar si OpenJDK 8 podría ser una buena alternativa. (Nota: todas las demás aplicaciones basadas en Java en nuestro entorno se basan en Java 1.8. Por lo tanto, no podemos mirar más allá de OpenJDK 8)
¡Qué probé! Descargué AdoptOpenJDK 8 y lo descomprimí en un directorio local. Configuré la variable Ruta del sistema en la carpeta JDK/bin respectiva. Intenté iniciar nuestra herramienta basada en Java y recibí el siguiente error por falta del componente javafx. Repitió los mismos pasos con las otras opciones de OpenJDK 8.
Exception in thread "UI:MainUI" java.lang.NoClassDefFoundError: javafx/embed/swing/JFXPanel Caused by: java.lang.ClassNotFoundException: javafx.embed.swing.JFXPanel at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:418) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352) at java.lang.ClassLoader.loadClass(ClassLoader.java:351)Dado que javafx está incorporado en Oracle JDK, no obtenemos este error cuando lo usamos. Pero obtuve el mismo error para todos los OpenJDK 8 que probé (Oracle OpenJDK 8, AdoptOpenJDK 8, Zulu OpenJDK 8, Libertica OpenJDK 8).
Intentando averiguar si puedo instalar OpenJFX o javafx en un directorio separado junto con OpenJDK 8 e iniciar mi herramienta. ¿O hay alguna otra opción a considerar para iniciar/usar la herramienta con OpenJDK 8 instalado en lugar de Oracle JDK?
Necesita una JVM para Java 8 que viene incluida con una copia de las bibliotecas JavaFX.
Algunos proveedores proporcionan eso.
Comprenda que ambos proveedores ofrecen dos variaciones de sus implementaciones de Java: una sin JavaFX y otra con JavaFX. Asegúrese de acceder al adecuado para sus necesidades.
Aquí hay un diagrama de flujo que hice como guía para elegir un proveedor de Java.
