当前位置: 首页 > 知识库问答 >
问题:

OpenJDK 13/jpack-Windows下捆绑应用程序和运行时的问题

应向晨
2023-03-14

我正在OpenJDK 13中测试jpackage实用程序,以创建捆绑包和安装程序。只要我使用OpenJDK作为创建包的运行时,就可以在Windows和MacOS上运行。但OpenJDK13尚未发布,我喜欢使用OpenJDK12作为运行时。因此,我创建了一个OpenJDK12运行时,其中包含:

jlink --output myruntime 
    --module-path ../jmods 
    --add-modules ALL-MODULE-PATH 
    --bind-services 
    --compress=2 
    --strip-native-commands

我在jpackage中使用这个运行时

jpackage create-app-image ^
    -o "/MyProject" ^
    -i /MyProject/path/to/my/jars ^
    -n application ^
    --runtime-image ..\..\OpenJDK12\bin\myruntime ^
    --main-class my.application.main.class ^
    --main-jar main.jar

创建的捆绑包没有错误消息。但当我尝试启动应用程序时,在Windows下出现了一个错误“无法启动JVM”。

如果我在MacOS上尝试同样的方法,一切都会很好。

有人有什么想法或提示吗?或者我可以在哪里搜索解决方案或更多信息?

谢谢

共有1个答案

阙博容
2023-03-14

请在命令行中启动应用程序exe并将其输出粘贴到此处

您还可以尝试最新的jpackage版本,看看他们是否修复了某些问题。

这是一篇如何使用OpenJDK 11构建应用程序映像的文章,并将OpenJDK 14与jpack一起仅用于构建安装程序/包:https://walczak.it/blog/distributing-javafx-desktop-applications-without-requiring-jvm-using-jlink-and-jpackage

 类似资料:
  • 我创建了一个依赖于OpenJDK 11和JavaFX的HelloWorldJava小应用程序。该应用程序打包在jar文件中,只有在我的系统上单独安装Java11和JavaFX时才能运行。 现在,我想将我的jar转换成一个自包含的Java应用程序,其中包括JavaFX和一个功能齐全的Java运行时环境。这将允许我在不安装OpenJDK 11的情况下运行我的应用程序(这会带来技术障碍,例如正确设置路径

  • null 支持与平台无关的应用程序图标 支持对JAR的自动更新 运行my.jar时对JRE参数的支持 Linux支持(.deb或.rpm)

  • 我最近不得不考虑一个新的软件的部署方法,它是用以下代码编写的: 雀巢6/Express 该软件将部署在160多台服务器上,分布在整个欧洲,其中一些服务器的互联网连接非常糟糕。 我做了一些研究,很多人明确建议不要捆绑销售。主要的论点是本机扩展将失败与捆绑器,如或(剧透:这是真的,但有一个解决方案)。在我看来,这在很大程度上是由于人们不关心这个事实:的作者在这个用例中使用了几乎相同的词。所以通常,我被

  • 问题内容: 我有一个包含Java应用程序的JAR文件。如何使它从Windows开始而不需要用户交互? 问题答案: 创建一个.bat文件,并将其放入其中: 然后将.bat文件放入Windows启动文件夹。 还有一件事:使用java和javaw之间是有区别的。虽然在调试应用程序时使用Java更好,但应用程序会打印文本或类似内容,而在不需要时,javaw则更好。为什么?因为java使用控制台显示所有应用

  • 我有一个包含Java应用程序的JAR文件。如何在不需要用户交互的情况下从Windows开始?