如何在运行时找出我正在使用的 JavaFX 版本?
问问题
35581 次
3 回答
44
一种简单的方法是简单地读取javafx.properties
位于您的$JAVA_HOME/jre/lib
目录中的文件。
我现在安装了 Java 1.7 u9。与它捆绑的 JavaFX 是 v2.0.3,因此上述文件包含以下行:
javafx.runtime.version=2.0.3
于 2012-12-04T14:11:19.557 回答
39
com.sun.javafx.runtime.VersionInfo.getRuntimeVersion();
于 2012-06-29T18:26:49.087 回答
21
您可以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
调用都已弃用且不属于官方 JavaFX 公共 API 的一部分,Sergey 的调用可能会更好。
更新
@assylias 对 Sergey 的回答的评论似乎表明,com.sun
如果未签名的应用程序嵌入在浏览器中或通过 WebStart 访问,Sergey 可能会导致安全异常。因此,在这些特定条件下运行时,可能没有好的解决方案来确定 javafx 运行时版本。
于 2012-06-29T20:27:22.283 回答