gpt4 book ai didi

jpackage --type app-image 创建无限递归目录

转载 作者:行者123 更新时间:2023-12-05 04:56:53 31 4
gpt4 key购买 nike

我正在尝试使用 jpackage 为我的 Java 应用程序创建安装程序。我在 Windows 10 上使用 OpenJDK 15.0.1。我可以使用

构建安装程序
jpackage --input C:\MyApp --main-jar MyApp.jar

这基本上可以,但是安装的应用程序缺少资源文件。根据文档,我应该能够构建一个应用程序镜像,将我的资源文件添加到镜像中,然后从修改后的应用程序镜像构建安装程序,如下所示

jpackage --type app-image -n MyAppImage
copy <resource files> MyAppImage
jpackage --app-image MyAppImage --name MyAppInstaller

但是,当我尝试 jpackage --type app-image 时,进程永远不会终止,我必须使用 control-C 终止它。当我检查 MyAppImage 目录时,它有一个子目录 app,它或多或少反射(reflect)了 C:\MyApp 的内容。这些内容包括 MyAppImage,它被递归地复制到 app 子目录中,创建一个可能无限的目录集:C:\MyApp\MyAppImage\app\MyAppImage\应用\MyAppImage ...

如果我手动删除 app\MyAppImage 并尝试 jpackage --app-image,jpackage 会崩溃并出现 java.io.IOException。

有没有人遇到过这个?我应该尝试什么?

最佳答案

事实证明,shell 工作目录有所不同。 --input 指定的目录不应与创建应用程序镜像的目录相同。

我通过创建子目录 C:\MyApp\build 并复制来解决问题要构建的 MyApp.jar。

cd C:\MyApp
mkdir build
copy MyApp.jar build
jpackage --type app-image --n MyAppImage --input C:\MyApp\build --main-jar MyApp.jar

递归文件复制不再发生。但是我在运行 jpackage --app-image 时仍然遇到错误。我将把它作为后续帖子的主题。

关于jpackage --type app-image 创建无限递归目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64741275/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com