问题标签 [jpackage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
182 浏览

java - JPackage 仅返回 Java 14 上的 SDK 版本号

我最近将我们的 Java 11 应用程序移植到了新发布的 Java 14 (ZuluJDK)。当尝试通过命令行使用新的 JPackage 打包我们的应用程序时,无论我使用哪个 jpackage-command,唯一发生的事情是以下输出:

一个示例命令(审查了一些东西,由 < > 占位符表示......):

有人可以帮助我是什么原因造成的吗?sdk 版本的输出并没有提供太多帮助。

0 投票
1 回答
694 浏览

java - JPackage 在创建 DMG 之前将文件复制到 app 的 Resource 文件夹

我在 MacOS 上使用 Java 14 的 JPackage,需要在构建 DMG 之前将文件复制到应用程序的 MacOS 和 Resources 文件夹,但不知道如何操作。在打包工具用户指南中,它提到从名为 application-name-post-image.sh 的资源文件夹运行脚本,但这似乎没有发生。

0 投票
4 回答
2470 浏览

java - 使用 jpackage 实用程序的代码签名 + 公证不适用于 macOS

在某些情况下,我正在使用 jpackage 实用程序来尝试创建一个签名的 DMG 文件以交付给我的用户。我需要签署这个 DMG 的原因是因为我想对软件进行公证。顺便说一句,我不确定是否可以(还)使用 jpackage 进行公证,但我还是在尝试。

但是,我在使用 jpackage 的内置代码签名选项时遇到了问题,这是成功公证的先决条件。

我正在使用选项运行 jpackage --mac-sign --mac-package-signing-prefix CardrDebate --mac-signing-key-user-name "Developer ID Application: ********** (*******)"(我已经编辑了实际的开发人员 ID,因为它在 StackOverflow 上是公开的)。

创建 jpackage 应用程序映像后,我通过导航到几个生成的 .dylib 文件并尝试测试生成的代码是否实际上已签名codesign -vvv {filename}.dylib,并且 codesign 说该对象根本没有签名(不是它被错误地签名,而是它只是根本没有签名)。

因此,我相信我的问题是由于我(可能)在 macOS 上错误地使用了 jpackage 的签名选项。我应该如何使用这些?

0 投票
2 回答
370 浏览

java - 使用 jLink + jPackage 创建 .exe 后无法连接到本地 MySQL 数据库

环境:OpenJDK 11、JavaFX 11、MySQL 8.0、Gradle 6.2.2、IntellijIDEA、Windows 8.1

问题: 当我在 IDE 中运行我的程序时,它可以正常工作并毫无问题地连接到数据库,但是一旦我尝试运行使用 jLink 和 jPackage 构建的 .exe,它就会显示错误。

“ConnectionManager”类中的一些代码用于连接到本地 MySQL 数据库:

构建.gradle:

错误堆栈跟踪:

请注意,从 IDE 运行时它可以完美运行。

0 投票
1 回答
168 浏览

java - 启动使用 jpackage 创建的已安装可执行文件时出现 ClassNotFoundException

我生成 MSI 安装程序的过程如下。

  1. 运行mvn install生成Example-1.0-SNAPSHOT-jar-with-dependencies.jar.
  2. 运行windows-executable.bat生成Example-1.0.0.msi.
  3. 安装Example-1.0.0.msi.
  4. 转到安装目录,打开终端,然后运行Example-1.0.0.exe以查看阻止应用程序启动的任何错误。

此 POM 文件(已删除不相关部分)用于mvn install生成Example-1.0-SNAPSHOT-jar-with-dependencies.jar.


此脚本使用 jpackage 生成 MSI 安装程序。


这是第 4 步的输出。

0 投票
1 回答
2499 浏览

javafx - 在 jpackage 之后运行 JavaFX 应用程序

我有一些非常菜鸟的问题。我尝试在 OpenJDK 14 中使用 jpackage 为我的测试应用程序创建安装。这是我所做的:

首先,创建自定义 JRE

那是成功的。我从运行配置中复制了我的 Eclipse 中的参数。之后使用 jpackage 进行安装

创建了 .msi 文件,我运行它,它在我的 Win10 应用程序中创建了条目。当然,我不知道如何在 windows 菜单中找到它,但它位于我的 C:\Program Files\HelloFX 中。当我尝试运行应用程序消息“无法启动 JVM”弹出时,我找到了带有 Duke 图像的图标和应用程序文件。

有人可以帮助我,我做错了什么?我真的很想完成这项工作并深入研究 JavaFX。

0 投票
1 回答
320 浏览

java - 无法通过 ToolProvider 找到 jpackage

精简版:我正在尝试从 gradle 任务中调用 jpackage,但 ToolProvider 返回 null(或者更好的是失败的 Optional)。AdoptOpenJDK 14.0.0(sdkman 标识符 14.0.0.hs-adpt)和 Java.net(我认为那是 Oracle OpenJDK!?)14.0.1(sdkman 标识符 14.0.1-open)就是这种情况。我正在使用 Gradle 6.3(但这感觉不像是 gradle 问题)。

长版:我正在关注jpackage 上的这个演讲,在 12:12 显示了从构建工具调用 jpackage 的代码。(官方jpackage页面还提到:除了命令行界面,jpackage可以通过名为“jpackage”的ToolProvider API(java.util.spi.ToolProvider)访问。

仍然是我的(Kotlin)代码(位于 buildSrc/src/main/kotlin 中)

由新的 Gradle 任务调用

未能说明

我应该补充一点,从命令行调用 jpackage 没有问题。

更新:我证实这与 Kotlin 或 Gradle 无关。这个基本的 Java-14 程序产生了同样的异常:

解决方案:(结合 Slaw 的回答)由于 jpackage 处于“孵化”状态,因此对于我的非模块化应用程序来说不容易使用,我决定通过创建一个新进程来调用它:

我的任务定义如下所示:

我无法从 IntelliJ 中执行任务,因为它似乎使用它本身捆绑的 JDK11 调用 Gradle,但至少 IntelliJ 可以自己编译构建脚本(因为版本检查在 doLast 块中,而不是直接在寄存器块)。或者,您可以更改 IntelliJ 用来调用 Gradle 的 JDK,向下滚动到 Slaw 在他的答案下的评论,看看如何。

顺便说一句:我很确定Gradle 版本 6.3是这个工作的硬性要求,因为它是第一个与 Java 14 兼容的 Gradle 版本。

0 投票
2 回答
1101 浏览

java - 使用 JPackage 制作 AppImage

我正在尝试使用 JPackage 创建 AppImage(在使用 OpenJDK 14 的 Ubuntu 18.04 系统上)

我找到的所有例子都是这种形式

当我运行它时,我得到一个目录./myappimage/./myappimage/bin/其中有一个可执行文件,我可以启动它来运行应用程序。但整件事并没有像我想要的那样捆绑到一个 AppImage 文件中。

我在这里想念什么?

0 投票
1 回答
189 浏览

java - 如何在 JavaFX 15-ea+3 中设置应用程序图标

我制作了一个包含以下详细信息的 JavaFX 项目:

OpenJFX 15-ea+3/// JDK 14_ Gradle_Non-modular

另外,我使用以下 Gradle 插件:

javafxplugin version 0.0.8/ org.beryx.runtime version 1.8.2& com.github.johnrengelman.shadow version 5.2.0(用于创建原生图像)

此外,JDK 14jpackage工具用于为应用程序创建安装程序包。这是build.gradle文件:

我已经imageOptions = ['--icon icon.ico']jpackage块内尝试过,但我总是收到这种错误:

非常感谢任何有用的建议或提示。

0 投票
1 回答
24 浏览

gluon - 观察到的服务模块不包含在 jpackage 中

我将GluonHQ 的 jpackager 反向移植用于 JDK 11--bind-services ,并使用以下参数运行它:

返回一个安装程序,但也抛出:

是我做错了什么,还是 jpackager 的这个反向移植实际上不支持这个论点?我的应用程序与安装程序打包在一起,我可以启动它,但实际上它应该调用服务但未能这样做。在这种情况下,我如何打包一个包含 的模块化应用程序ServiceProviders