gpt4 book ai didi

java - 有没有办法调试为什么我的 JavaFX-Project 的可执行 JAR 在我的计算机上运行而不是在其他计算机上运行? (使用jdk 1.8._051)

转载 作者:行者123 更新时间:2023-12-01 19:38:39 24 4
gpt4 key购买 nike

我导出了 JavaFX2 项目的 Jar。它工作正常,但是当我在另一台机器上运行它时,会出现classDefNotFoundExeption:javafx.application.Application

有什么提示可以解决这个问题吗?

这是我的 list :

Class-Path: .
Main-Class: proj.view.Launcher

我还对 Launcher 进行了编程,以便在找不到 JavaFX 的情况下启动 Swing GUI。

这是我的启动器类


public class Launcher {

public static void main(String[] args) {

try {

Class c = javafx.application.Application.class;
proj.main.App.main(args);


}catch (NoClassDefFoundError e) {
String[] t = {"Swing Backup","Application start Error"};
MainFrame.remote(t);


}

}

}


最佳答案

其他计算机正在运行不包含 JavaFX 的 Java 安装。它可以在您的计算机上运行,​​因为您已经安装了 JavaFX。

要测试javafx.application.Application是否可用,您需要使用反射,即

boolean hasJavaFX;
try {
Class.forName("javafx.application.Application");
hasJavaFX = true;
} catch (ClassNotFoundException e) {
hasJavaFX = false;
}
if (hasJavaFX) {
MainFrame.remote(new String[] {"Swing Backup","Application start Error"});
} else {
proj.main.App.main(args);
}

关于java - 有没有办法调试为什么我的 JavaFX-Project 的可执行 JAR 在我的计算机上运行而不是在其他计算机上运行? (使用jdk 1.8._051),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56346557/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com