为什么此.jar在我的ubuntu中运行而不在Windows中运行?

问题描述

最近几周我一直在开发我的第一个Java应用程序。它使用JavaFX,Maven,Apache POI和H2数据库。由于Apache POI,我在打包时遇到了一些问题。经过一番搜索,我找到了一种使用此插件打包的方法:

start = '2010-01-01'
end = '2010-02-01'

pd.bdate_range(start,end,freq='C',weekmask='Mon Fri')
#DatetimeIndex(['2010-01-01','2010-01-04','2010-01-08','2010-01-11',#               '2010-01-15','2010-01-18','2010-01-22','2010-01-25',#               '2010-01-29','2010-02-01'],#              dtype='datetime64[ns]',freq='C')

我什至可以使用<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.2.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <finalName>fat-ultrasomma</finalName> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>ultrasomma.Main</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> 使其在Ubuntu上运行,但是当我尝试在Windows 10上运行时,我已经将JAVA_HOME和PATH设置为Java jdk 14,则出现此错误:

java -jar fat-ultrasomma.jar

我仍然不明白为什么会这样,该项目的目标是使其在Windows上运行。 这是该项目与Github的链接:github

如果您想尝试运行java -jar fat-ultrasomma.jar java.lang.ClassNotFoundException: com.sun.glass.ui.win.WinPlatformFactory at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:340) at com.sun.glass.ui.PlatformFactory.getPlatformFactory(PlatformFactory.java:42) at com.sun.glass.ui.Application.run(Application.java:144) at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:280) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:269) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158) at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658) at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195) at java.base/java.lang.Thread.run(Thread.java:832) Failed to load Glass factory class Exception in thread "main" java.lang.NullPointerException at com.sun.glass.ui.Application.run(Application.java:144) at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:280) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:269) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158) at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658) at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195) at java.base/java.lang.Thread.run(Thread.java:832) ,则.jar会位于目标文件夹中。

请我真的需要使它工作。

以下是在ubuntu上运行的程序的打印稿:ubuntu

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)