私奔的领结 · 队友是UZI就难赢?兰林汉偶遇UZI遗憾躺输 ...· 2 月前 · |
俊逸的罐头 · 2023年南阳市普通高中招生政策出台,六大方 ...· 4 月前 · |
重感情的香菇 · 河南省交通厅5任厅长的打炮史_门大炮· 12 月前 · |
深情的葡萄酒 · 汽车之家|威马EX5|论坛|社区|怎么样|买车网· 1 年前 · |
痴情的皮带 · 钢铁魔女安尼洛兹结局 - 抖音· 1 年前 · |
我知道你可以通过添加
在命令行中运行jar文件时,
--module-path "pathToLib" --add-modules javafx.controls,javafx.fxml,javafx.graphics
。
但是我的问题是,在系统设置或配置中没有永久的解决方案来解决这个错误,并且能够像
java -jar myfile.jar
那样正常地运行一个
java -jar myfile.jar
文件,而不是每次我应该添加模块
java --module-path "C:\Users\..\Downloads\javafx-sdk-17.0.2\lib" --add-modules javafx.controls,javafx.fxml,javafx.graphics -jar myfile.jar
时都这样运行。
此外,我知道您可以为每个
jar
文件为这个操作创建一个脚本,但我正在考虑一些类似于系统设置或配置的东西,这些设置或配置将适用于所有带有
javafx
的
jar
文件,并且能够像
java -jar myFile.jar
一样正常地运行jar文件。
我正在使用
Ant
作为构建工具。
推荐的替代品
有关jar发行版的推荐替代解决方案,请参见 打包JavaFX标记的资源 :jlink、jpackage或本机映像。
使用包含JavaFX 的JRE
预装的包括JavaFX的Pre,例如一些Bellsoft、Zulu和Corretto发行版,将在没有附加模块说明符的情况下执行JavaFX应用程序,因为它们在发行版的基本模块设置中包含了JavaFX模块。
注意,如果要使用包含 (并非所有JDK包括JavaFX )的JDK,则 必须使用JDK的正确版本:
您还可以使用jlink创建包含JavaFX模块的自己的JRE发行版(这实际上比听起来更简单)。
使用ant构建一个包含App和JavaFX组件 的JAR
但我仍然希望,在使用ANT作为JavaFX的构建工具时,可能会有一个解决方案。
在这个答案中有一些关于用ant构建模块化JavaFX应用程序的信息:
不过,这可能不是你想要的一切。
要使用ant创建一个可执行的jar,可以尝试在类路径回答上模拟这个maven JavaFX阴影的输出:
但是使用ant任务来构建巨大的阴影jar而不是maven。我没有明确的说明,你需要自己去完成这个重要的任务。
创建的jar将包括一个启动程序类、应用程序代码、依赖库代码、JavaFX java和本机代码。只要包含了相关平台的本机代码,jar就会在任何现代JRE上运行。jar将在不受支持的类路径配置中运行。
Zip分布
或者(更好)创建一个zip发行版:
- Define a `module-info.java`.
- This step isn’t strictly necessary or reasonably possible for some apps.
注意: maven JavaFX插件一旦正确配置,就可以通过一个命令完成这些任务中的大部分:
mvn javafx:jlink
附加信息
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
扫码关注腾讯云开发者
领取腾讯云代金券
重感情的香菇 · 河南省交通厅5任厅长的打炮史_门大炮 12 月前 |
深情的葡萄酒 · 汽车之家|威马EX5|论坛|社区|怎么样|买车网 1 年前 |
痴情的皮带 · 钢铁魔女安尼洛兹结局 - 抖音 1 年前 |