Dej*_*kic 43
一种简单的方法是简单地读取目录中的javafx.properties文件$JAVA_HOME/jre/lib.
我目前安装了Java 1.7 u9.与之捆绑的JavaFX是v2.0.3,因此上述文件包含以下行:
javafx.runtime.version=2.0.3
Run Code Online (Sandbox Code Playgroud)
Ser*_*nev 38
com.sun.javafx.runtime.VersionInfo.getRuntimeVersion();
Run Code Online (Sandbox Code Playgroud)
jew*_*sea 19
您可以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);
}
}
Run Code Online (Sandbox Code Playgroud)
需要注意的是系统属性的访问方法可能导致安全异常,如果未签名的应用程序嵌入浏览器或通过Webstart的访问,因此谢尔盖的com.sun通话可能会更好,虽然所有的com.sun呼叫都弃用,并非正式的JavaFX公共API的一部分.
更新
@assylias对谢尔盖答案的评论似乎表明,com.sun如果未签名的应用程序嵌入在浏览器中或通过WebStart访问,则Sergey 可能会导致安全性异常.因此,在这些特定条件下运行时,确定javafx运行时版本可能没有好的解决方案.
| 归档时间: |
|
| 查看次数: |
28589 次 |
| 最近记录: |