- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是一名计算机专业的学生,在公司实习期间,使用JavaFX、maven和apache.poi开发了一个小型java软件。
信息:该应用程序在 Intellij 上运行并完美构建,我的问题涉及项目完成后生成的 *.jar
。
我首先使用 JDK 14 和 JFX14,但是在执行 (java –jar xx.jar) 时出现错误,提示我正在 JAVA 58 (JAVA 14) 中编译程序并且我正在使用 JRE 52(JAVA 8)。
所以我修改了项目以使用 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 的用户一起运行?
恭敬
最佳答案
不要尝试构建一个 fat jar 子。它不适用于现代 Java。相反,构建一个真正的安装程序。使用 JDK 14+ 可以轻松完成此操作。只需按照本教程 https://github.com/dlemmermann/JPackageScriptFX 进行操作即可其中涵盖了您需要的一切。它使用 JDK 14 中的 jpackage 和其中的一些其他工具,并且也适用于非模块化项目。安装 JDK 14 时,只需确保正确设置 JAVA_HOME 和 PATH,以便所有工具都能找到正确的 Java 版本进行构建。
关于java - 如何在jre1.8上运行java11和jfx11应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61610248/
我是一名优秀的程序员,十分优秀!