java - 适用于 Windows 但不适用于 Linux 的应用程序

标签 java linux javafx jar

我有一个奇怪的问题。我有一个需要运行的 .jar 文件,但是当我在我的 Windows PC 上运行它时它可以运行,但是当我在我的 Ubuntu 服务器上运行它时它不起作用。我已经在 Ubuntu 机器上安装了 default-jre,当我通过 java -jar {my name of file} 运行它时,它会这样说:

Error: Could not find or load main class {name of the class that is missing} Caused by: java.lang.NoClassDefFoundError: javafx/application/Application.

我还使用 apt-get install 安装了 openjfx 和 openjfx-source:

apt-get install openjfx
apt-get install openjfx-source

我的 Windows Java 版本: Java 版本“1.8.0_181” Java(TM) SE 运行时环境(build 1.8.0_181-b13) Java HotSpot(TM) 64 位服务器 VM(构建 25.181-b13,混合模式)

我的 Ubuntu Java 版本: openjdk 版本“10.0.2” 2018-07-17 OpenJDK运行环境(build 10.0.2+13-Ubuntu-1ubuntu0.18.04.2) OpenJDK 64 位服务器虚拟机(build 10.0.2+13-Ubuntu-1ubuntu0.18.04.2,混合模式)

最佳答案

我找到了它不起作用的原因。该应用程序构建为在 Java 8 上运行,我已经在其上安装了 Java 11。现在它可以与 Java 8 完美配合。

关于java - 适用于 Windows 但不适用于 Linux 的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52687612/

相关文章:

java - 预测轨迹路径点的最佳方法

java - 遇到 java.net.bindexception 无法分配请求地址的问题

linux - 在 Linux 中迭代更改文件名

javafx - 为什么我的 JavaFx 应用程序在 RaspberryPi 上运行时没有框架?

java - 从 Spring 3.1.2 迁移到 4.1.6 后,DefaultListableBeanFactory Autowiring ,而不是自己实现

java - Java的Runtime.maxMemory()什么时候会返回Long.MAX_VALUE?

java - 在 fragment 之间共享代码

linux - 已授予权限,但 www-data 仍无法在文件夹中写入文件

JavaFX 2.2 javadoc?

javaFX-如何在屏幕底部放置文本区域