如何获取JavaFX的版本号?

时间:2012-06-29 18:21:44

标签: java javafx javafx-2

如何在运行时找到我正在使用的JavaFX版本?

3 个答案:

答案 0 :(得分:41)

一种简单的方法是简单地阅读位于javafx.properties目录中的$JAVA_HOME/jre/lib文件。

我目前安装了Java 1.7 u9。与之捆绑的JavaFX是v2.0.3,因此上述文件包含以下行:

javafx.runtime.version=2.0.3

答案 1 :(得分:36)

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

答案 2 :(得分:17)

您可以从系统属性中获取javafx.runtime.version号码。

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);
  }
}

请注意,如果未签名的应用程序嵌入在浏览器中或通过WebStart访问,则系统属性访问方法可能会导致安全性异常,因此即使所有com.sun次调用都是com.sun次呼叫,谢尔盖的com.sun呼叫也可能更好已弃用,而不是官方JavaFX公共API的一部分。

更新

@assylias对谢尔盖答案的评论似乎表明,如果未签名的应用程序嵌入在浏览器中或通过WebStart访问,则Sergey {{1}}可能会导致安全性异常。因此,在这些特定条件下运行时,确定javafx运行时版本可能没有很好的解决方案。