¿Cómo obtener el número de versión de JavaFX?

¿Cómo puedo averiguar en tiempo de ejecución qué versión de JavaFX estoy usando?

com.sun.javafx.runtime.VersionInfo.getRuntimeVersion(); 

Una de las formas simples es simplemente leer el archivo javafx.properties ubicado en su directorio $JAVA_HOME/jre/lib .

Tengo Java 1.7 u9 instalado en este momento. JavaFX incluido con él es v2.0.3 por lo que el archivo mencionado anteriormente contiene la siguiente línea:

 javafx.runtime.version=2.0.3 

Puede obtener el número javafx.runtime.version de una propiedad del sistema.

 import javafx.application.Application; import javafx.stage.Stage; public class ReportVersion extends Application { public static void main(String[] args) { launch(args); } @Override public void start(Stage stage) { System.out.println("javafx.runtime.version: " + System.getProperties().get("javafx.runtime.version")); System.exit(0); } } 

Tenga en cuenta que el método de acceso a la propiedad del sistema puede causar una excepción de seguridad si una aplicación sin firmar está incorporada en un navegador o se accede a través de WebStart, por lo que la llamada com.sun de Sergey puede ser mejor aunque todas com.sun llamadas com.sun estén obsoletas y no sean parte del API pública de JavaFX.

Actualizar

Los comentarios de @assylias sobre la respuesta de Sergey parecen indicar que el com.sun de Sergey puede causar una excepción de seguridad si una aplicación sin firmar está incorporada en un navegador o se accede a través de WebStart. Entonces, tal vez no haya una buena solución para determinar la versión de tiempo de ejecución de javafx cuando se ejecuta bajo esas condiciones específicas.