Skip to content

Conversation

alexeysemenyukoracle
Copy link
Member

@alexeysemenyukoracle alexeysemenyukoracle commented Sep 29, 2025

Use "JOpt Simple" from jdk.internal.joptsimple package to parse jpackage command line.

All command-line parsing code is placed in a new "jdk.jpackage.internal.cli" package with 89% unit test coverage.

Error reporting improved:

  1. Errors in launcher property files contain the path of the property file.

  2. Not the first, but all command-line errors are reported.

All "params"-specific code removed.

Old tool provider implementation jdk.jpackage.internal.JPackageToolProvider had lousy thread-safety protection that didn't work when multiple instances of jpackage tool provider are created and invoked asynchronously. This patch fixes this issue. It is safe to invoke the same jpackage tool provider instance asynchronously, and also safe to invoke multiple instances of jpackage tool provider.

Autogenerated summary of all recognized options (jdk/test/jdk/tools/jpackage/junit/share/jdk.jpackage/jdk/jpackage/internal/cli/jpackage-options.md).


Progress

  • Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue

Issue

  • JDK-8333727: Use JOpt in jpackage to parse command line (Enhancement - P3)

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/27564/head:pull/27564
$ git checkout pull/27564

Update a local copy of the PR:
$ git checkout pull/27564
$ git pull https://git.openjdk.org/jdk.git pull/27564/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 27564

View PR using the GUI difftool:
$ git pr show -t 27564

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/27564.diff

@bridgekeeper
Copy link

bridgekeeper bot commented Sep 29, 2025

👋 Welcome back asemenyuk! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk
Copy link

openjdk bot commented Sep 29, 2025

❗ This change is not yet ready to be integrated.
See the Progress checklist in the description for automated requirements.

@openjdk openjdk bot added the core-libs core-libs-dev@openjdk.org label Sep 29, 2025
@openjdk
Copy link

openjdk bot commented Sep 29, 2025

@alexeysemenyukoracle The following label will be automatically applied to this pull request:

  • core-libs

When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command.

@alexeysemenyukoracle alexeysemenyukoracle force-pushed the app-pkg-same-app-image-layout+JDK-8333727-merge branch from b41135c to 7b80329 Compare September 29, 2025 23:13
@openjdk
Copy link

openjdk bot commented Sep 29, 2025

@alexeysemenyukoracle Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information.

@alexeysemenyukoracle alexeysemenyukoracle force-pushed the app-pkg-same-app-image-layout+JDK-8333727-merge branch from 7b80329 to 0cd5595 Compare October 1, 2025 19:39
@openjdk
Copy link

openjdk bot commented Oct 1, 2025

@alexeysemenyukoracle Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information.

@alexeysemenyukoracle alexeysemenyukoracle force-pushed the app-pkg-same-app-image-layout+JDK-8333727-merge branch from 0cd5595 to 6a0f15c Compare October 2, 2025 18:35
@openjdk
Copy link

openjdk bot commented Oct 2, 2025

@alexeysemenyukoracle Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information.

@alexeysemenyukoracle alexeysemenyukoracle force-pushed the app-pkg-same-app-image-layout+JDK-8333727-merge branch from 6a0f15c to 20137ae Compare October 2, 2025 19:58
@openjdk
Copy link

openjdk bot commented Oct 2, 2025

@alexeysemenyukoracle Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information.

@alexeysemenyukoracle alexeysemenyukoracle force-pushed the app-pkg-same-app-image-layout+JDK-8333727-merge branch from 20137ae to c299be6 Compare October 3, 2025 00:32
@openjdk
Copy link

openjdk bot commented Oct 3, 2025

@alexeysemenyukoracle Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information.

…ix PackagingPipeline, *Bundler and StandardBundlerParam.getDefaultAppVersion accordingly
…ObjectMapper in tests. Change signature of AppImageFile.load(Path appImageDir, ApplicationLayout appLayout) to AppImageFile.load(ApplicationLayout appLayout), appImageDir parameter is redundant.
…erationDescriptor. Rework BundlingEnvironment.
…and options; copy ObjectMapper from test/jdk/tools/jpackage/helpers/jdk/jpackage/test/ObjectMapper.java
@alexeysemenyukoracle alexeysemenyukoracle force-pushed the app-pkg-same-app-image-layout+JDK-8333727-merge branch from c299be6 to b3be7ff Compare October 3, 2025 01:40
@openjdk
Copy link

openjdk bot commented Oct 3, 2025

@alexeysemenyukoracle Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core-libs core-libs-dev@openjdk.org
Development

Successfully merging this pull request may close these issues.

1 participant