I am trying to build a JRE on Windows 10 with OpenJDK 11. I ALWAYS get a error message, so maybe I'm just doing something wrong.
Here is a simple invocation of jlink:
C:\Users\en>"C:\Program Files\AdoptOpenJDK\jdk-11.0.9.11-hotspot\bin\jlink.exe" --add-modules java.se --bind-services --output X:\jdk11
Error: Duplicate entry!
java.lang.AssertionError: Duplicate entry!
at jdk.jlink/jdk.tools.jlink.builder.DefaultImageBuilder.lambda$storeFiles$1(DefaultImageBuilder.java:176)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
at jdk.jlink/jdk.tools.jlink.builder.DefaultImageBuilder.storeFiles(DefaultImageBuilder.java:171)
at jdk.jlink/jdk.tools.jlink.internal.ImagePluginStack.storeFiles(ImagePluginStack.java:498)
at jdk.jlink/jdk.tools.jlink.internal.ImageFileCreator.writeImage(ImageFileCreator.java:166)
at jdk.jlink/jdk.tools.jlink.internal.ImageFileCreator.create(ImageFileCreator.java:100)
at jdk.jlink/jdk.tools.jlink.internal.JlinkTask$ImageHelper.retrieve(JlinkTask.java:851)
at jdk.jlink/jdk.tools.jlink.internal.ImagePluginStack.operate(ImagePluginStack.java:206)
at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.createImage(JlinkTask.java:408)
at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.run(JlinkTask.java:272)
at jdk.jlink/jdk.tools.jlink.internal.Main.run(Main.java:54)
at jdk.jlink/jdk.tools.jlink.internal.Main.main(Main.java:33)
Caused by: java.nio.file.FileAlreadyExistsException: X:\jdk11\conf\security
at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:87)
at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
at java.base/sun.nio.fs.WindowsFileSystemProvider.createDirectory(WindowsFileSystemProvider.java:509)
at java.base/java.nio.file.Files.createDirectory(Files.java:689)
at java.base/java.nio.file.Files.createAndCheckIsDirectory(Files.java:796)
at java.base/java.nio.file.Files.createDirectories(Files.java:742)
at jdk.jlink/jdk.tools.jlink.builder.DefaultImageBuilder.writeEntry(DefaultImageBuilder.java:440)
at jdk.jlink/jdk.tools.jlink.builder.DefaultImageBuilder.accept(DefaultImageBuilder.java:411)
at jdk.jlink/jdk.tools.jlink.builder.DefaultImageBuilder.lambda$storeFiles$1(DefaultImageBuilder.java:173)
... 19 more
I get the same result with JDK 14 on Windows. However, the same command works on Linux and produces a JRE image.