Install4j createbundle因`file.parentFile不能为null而失败`

Install4j createbundle因`file.parentFile不能为null而失败`,install4j,Install4j,我想从ZuluJDK创建一个JRE包。 步骤: 下载zulu11.41.24-sa-jdk11.0.8-win_i686.zip 解压缩它,给我一个zulu11.41.24-sa-jdk11.0.8-win_i686目录 运行了createbundle,失败,抄本如下: 这个错误消息意味着什么,以及如何让createbundle越过这个障碍? (我过去确实成功创建了JRE捆绑包,这次失败出乎意料。)好的。。。我可以通过将cd刻录到createbundle所在的目录来解决此问题: C:\dev

我想从ZuluJDK创建一个JRE包。 步骤:

  • 下载
    zulu11.41.24-sa-jdk11.0.8-win_i686.zip
  • 解压缩它,给我一个
    zulu11.41.24-sa-jdk11.0.8-win_i686
    目录
  • 运行了
    createbundle
    ,失败,抄本如下:
这个错误消息意味着什么,以及如何让
createbundle
越过这个障碍?
(我过去确实成功创建了JRE捆绑包,这次失败出乎意料。)

好的。。。我可以通过将cd刻录到createbundle所在的目录来解决此问题:

C:\develop\projects\id-gui\target\downloads\install4j8.0.8\bin>createbundle ..\..\jre-bundles\zulu11.41.24-sa-jdk11.0.8-win_i686
Linking JRE
Writing JRE bundle archive....................................................................................................
The bundle file C:\develop\projects\id-gui\target\downloads\install4j8.0.8\bin\windows-x86-11.0.8.tar.gz was successfully created.

看起来像createbundle中的错误。

将相对路径传递给
createbundle
会导致此故障。这将在install4j 8.0.9中修复。

您可以尝试指定createbundle的绝对路径(不将cd'ing放入bin目录)并检查其是否有效吗?当然可以。失败:
C:\develope\projects\id gui\target\downloads\jre bundles>C:\develope\projects\id gui\target\downloads\install4j8.0.8\bin\createbundle.exe zulu11.41.24-sa-jdk11.0.8-win_i686
给出了
java.lang.IllegalStateException:file.parentFile.parentFile不能为null
我使用可执行文件和源JDK的绝对路径进行了测试,这确实有效。对可执行文件使用相对路径,对JDK使用绝对路径也有效。感谢您的反馈,我们将在8.0.9中修复此问题。
C:\develop\projects\id-gui\target\downloads\install4j8.0.8\bin>createbundle ..\..\jre-bundles\zulu11.41.24-sa-jdk11.0.8-win_i686
Linking JRE
Writing JRE bundle archive....................................................................................................
The bundle file C:\develop\projects\id-gui\target\downloads\install4j8.0.8\bin\windows-x86-11.0.8.tar.gz was successfully created.