Solución:
Descargue el SDK de JavaFX apropiado para su sistema operativo y descomprímalo en la ubicación deseada, por ejemplo / Users / your-user / Downloads / javafx-sdk-11.
- Crea un proyecto JavaFX
Cree un proyecto JavaFX Proporcione un nombre al proyecto, como HelloFX, y una ubicación. Cuando se abre el proyecto, las clases JavaFX no se reconocen.
- Establecer JDK 11
Vaya a Archivo -> Estructura del proyecto -> Proyecto y establezca el SDK del proyecto en 11. También puede establecer el nivel de idioma en 11. Establecer JDK 11
- Crea una biblioteca
Vaya a Archivo -> Estructura del proyecto -> Bibliotecas y agregue JavaFX 11 SDK como biblioteca al proyecto. Apunte a la carpeta lib del JavaFX SDK.
Una vez aplicada la biblioteca, el IDE reconocerá las clases JavaFX.
Advertencia: si ejecuta ahora el proyecto, se compilará, pero obtendrá este error:
Error: faltan componentes de tiempo de ejecución de JavaFX y son necesarios para ejecutar esta aplicación
Este error se muestra ya que el lanzador de Java 11 comprueba si la clase principal extiende javafx.application.Application. Si ese es el caso, es necesario tener el módulo javafx.graphics en la ruta del módulo.
- Agregar opciones de VM
Para resolver el problema, haga clic en Ejecutar -> Editar configuraciones … y agregue estas opciones de VM:
–module-path% PATH_TO_FX% –add-modules = javafx.controls, javafx.fxml
Tenga en cuenta que el proyecto predeterminado creado por IntelliJ usa FXML, por lo que se requiere javafx.fxml junto con javafx.controls. Si su proyecto utiliza otros módulos, deberá agregarlos también.
Haga clic en aplicar y cierre el cuadro de diálogo.
- Ejecuta el proyecto
Haga clic en Ejecutar -> Ejecutar … para ejecutar el proyecto, ahora debería funcionar bien.
Recurso detallado: https://www.jetbrains.com/help/idea/javafx.html
Puede descargar una versión de Java que incluye JavaFX desde https://www.azul.com/downloads/zulu/zulufx/. En ese caso, no hay una configuración especial involucrada para ejecutar aplicaciones JavaFx en Java 11. JavaFX funcionará como en Java 8.