I doubt this has anything to do with jpackage being in incubator or not. Fundamentally, just copying binary launchers into another JDK image like you are doing is only going to work by accident, if it works at all. If you need jpackage (or javac or jar or ...) to be in a JDK image, then you should jlink it yourself, include all of the modules you need, and don't strip the executables.

-- Kevin


On 2/21/2020 9:04 AM, Michael Hall wrote:

On Feb 21, 2020, at 9:39 AM, Michael Hall <mik3h...@gmail.com> wrote:

You can't copy launchers in this way as it requires the module to be in the 
run-time image.
If I add modules it into the build runtime I think I’m ok but haven’t tried it 
yet.
jpackage seems to need more than just the module in the run-time image.
I did the jpackage build again including it in the --add-modules

This now shows it there…

exec java --list-modules | grep jpackage
System.in:35:jdk.incubator.jpackage@14

However, I still get this…

exec jpackage --version
java.io.IOException: Cannot run program "jpackage": error=2, No such file or 
directory
        at java.base/java.lang.ProcessBuilder.start(Unknown Source)
        at java.base/java.lang.ProcessBuilder.start(Unknown Source)

Running it directly now works…

./jpackage --version
WARNING: Using incubator modules: jdk.incubator.jpackage
14

Which I think again shows the module is included in the run-time image.

Possibly there is some other dependency. I’ll have to figure that out or wait 
until jpackage is out of incubator.



Reply via email to