RFR: 8374219: Fix issues in jpackage's Executor class [v5]
Alexander Matveev
almatvee at openjdk.org
Fri Jan 9 22:13:35 UTC 2026
On Fri, 9 Jan 2026 03:48:24 GMT, Alexey Semenyuk <asemenyuk at openjdk.org> wrote:
>> - Move code shared between jpackage's Executor and jpackage's test lib Executor into `jdk.jpackage.internal.util.CommandOutputControl` class using the latter one as the baseline for the new class; [CommandOutputControl class javadoc](https://alexeysemenyukoracle.github.io/jpackage-javadoc/jdk.jpackage/jdk/jpackage/internal/util/CommandOutputControl.html).
>> - Place "execute with retries" logic into `jdk.jpackage.internal.util.RetryExecutor` class and use it from both jpackage and jpackage's test lib. Use `jdk.jpackage.internal.RetryExecutor` class as the baseline.
>> - Add `ObjectFactory`, `ExecutorFactory`, and `RetryExecutorFactory` interfaces to the "jdk.jpackage.internal" package. They enable the use of command mocks with jpackage.
>> - Add `jdk.jpackage.test.mock` package. It facilitates creating command mocks. Use it to test LibProvidersLookup, LinuxSystemEnvironment, LinuxPackageArch, MacDmgSystemEnvironment, and MacDmgPackager classes.
>>
>> Supplementary changes:
>> - Make `jdk.jpackage.internal.SystemEnvironment` and all implementing classes package private
>
> Alexey Semenyuk has updated the pull request incrementally with one additional commit since the last revision:
>
> JPackageCommand: add a comment to the new withToolProvider()
Latest changes looks good.
-------------
Marked as reviewed by almatvee (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/28733#pullrequestreview-3645717031
More information about the core-libs-dev
mailing list