On Wed, 2 Feb 2022 20:21:54 GMT, Christian Stein <cst...@openjdk.org> wrote:
> Calling `jar --create --file a/b/foo.jar INPUT-FILES` should create missing > parent directories (here `a/b`) on the default file system before storing the > JAR file (here `foo.jar`) in the destination directory. Thank you for taking this on. Overall looks good. A few comments below. Also, we should update jar.properties to indicate that the directory path will be created as needed in the help section for jar. Best, Lance src/jdk.jartool/share/classes/sun/tools/jar/Main.java line 468: > 466: if (parent != null) { > 467: Files.createDirectories(parent); > 468: } Would be good to move the creation after validating the arguments as this would fail after creating the temp zip file. Be good to do via another PR test/jdk/tools/jar/CreateMissingParentDirectories.java line 38: > 36: import java.util.stream.Stream; > 37: > 38: public class CreateMissingParentDirectories { Understand why you used went this route for the test given some of the older tests use this framework. I might have gone the route of using TestNG as the newer tests (such as in MultiRelease) use it. test/jdk/tools/jar/CreateMissingParentDirectories.java line 78: > 76: > 77: private static void doHappyPathTest(Path jar, Path entry) throws > Throwable { > 78: String[] jarArgs = new String[]{"cf", jar.toString(), > entry.toString()}; I might consider also using --create --file in addition to "cf" in a run for an extra sanity check ------------- PR: https://git.openjdk.java.net/jdk/pull/7327