我是一名计算机专业的学生,在一家公司实习期间,我用JavaFX、maven和apache.poi开发了一个小型java软件。
信息:应用程序在Intellij上工作并构建得很完美,我的问题与我在项目完成后生成的*.jar有关。
我第一次使用JDK 14和JFX14,但是在执行时(java -jar xx.jar),我说我正在用Java58 (JAVA 14)编译程序,并且使用JRE 52 (Java8),这是一个错误。
因此,我修改了这个项目,使其使用JDK 11和JFX 11进行编译,现在我也有了同样的错误,告诉我正在用JAVA 55 (JAVA 11)编译程序,而且我使用的是JRE 52 (JAVA 8)。
这个错误是因为我的个人电脑默认使用jre1.8.0_251。
所以我尝试以"path_to_jdk11 \ bin \ java.exe“-jar xxx.jar的方式启动这个程序,它可以工作。
所以这就是我的问题:
大多数用户使用Oracle上提供的JAVA版本,即jre1.8.0_251,这是最新的可用版本。在我的程序之外,我想需要Java 11,它不是部署在公司PC上的。我试图将我的项目移植到java 8,但是Maven和module.info.java出现了错误。
您有关于如何部署*.jar或将其部署在.exe中以便与拥有jre1.8.0_251的用户一起运行的技巧吗?
恭敬
发布于 2020-05-05 11:40:53
别试着造个胖罐子。它不能与现代Java一起工作。相反,构建一个真正的安装程序。使用JDK 14+可以很容易地做到这一点。只需遵循本教程https://github.com/dlemmermann/JPackageScriptFX,它涵盖了您所需的一切。它使用来自JDK 14的jpackage和来自JDK 14的一些其他工具,也可以用于非模块化的项目。安装JDK 14时,只需确保正确设置了JAVA_HOME和路径,以便所有工具都能找到用于构建的正确版本。
https://stackoverflow.com/questions/61610248
复制相似问题