On Wed, 16 Oct 2024 18:45:38 GMT, Alexey Semenyuk <asemen...@openjdk.org> wrote:

> Make jpackage correctly handle the output directory (`--dest`) that is:
>  - a subdirectory of the input directory;
>  - the same as the input directory.
> 
> Make jpackage correctly handle temp directory (`--temp`) that is:
>  - a subdirectory of the input directory.
> 
> jpackage will produce an app image or a package in the above directory 
> configurations without running in an infinite loop.
> 
> The new test/jdk/tools/jpackage/share/InOutPathTest.java test covers all the 
> above scenarios.
> 
> `IOUtils.copyRecursive()` fixed to never run in a recursive loop by building 
> the list of non-recursive file/dir copy commands and executing them outside 
> the recursive directory tree traversal.
> 
> src/jdk.jpackage/share/classes/jdk/jpackage/internal/Arguments.java, 
> src/jdk.jpackage/share/classes/jdk/jpackage/internal/DeployParams.java, 
> src/jdk.jpackage/share/classes/jdk/jpackage/internal/StandardBundlerParam.java,
>  
> test/jdk/tools/jpackage/junit/jdk.jpackage/jdk/jpackage/internal/DeployParamsTest.java
>  files fixed to get rid of `DeployParams.input` and `DeployParams.output` 
> fields and replace them with the new `StandardBundlerParam.OUTPUT_DIR` param.
> 
> The above changes altered the logic of configuring the output directory, thus 
> added a new `BasicTest.testNoOutputDir()` test to test jpackage without 
> `--dest` parameter. This required adding new API to test helper classes.

This pull request has now been integrated.

Changeset: 568b07a0
Author:    Alexey Semenyuk <asemen...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/568b07a09b7e08ae9ea4a7d23e1ee3ca8c06e7a9
Stats:     858 lines in 15 files changed: 771 ins; 24 del; 63 mod

8325089: jpackage utility creates an "infinite", undeleteable directory tree

Reviewed-by: almatvee

-------------

PR: https://git.openjdk.org/jdk/pull/21550

Reply via email to