For runtime bundling, jpackage will read the version for the output bundle from the value of the "JAVA_VERSION" property of JDK's "release" file if the `--app-version` option is not on the command line. jpackage will normalize the version it reads from the "release" file to fit into the constraints of the bundle it produces.
If the "release" file doesn't exist, is malformed, or the value of the "JAVA_VERSION" property is invalid, jpackage will ignore it. If the value of the `--runtime-image` option references a valid macOS bundle, not a plain directory, jpackage will ignore the "release" file and will attempt to read the version from the "Info.plist" file of the input bundle. Revamed AppVersionTest and updated it to cover the new functionality. Based on https://github.com/openjdk/jdk/pull/29260 PR. ------------- Commit messages: - 8357404: jpackage should attempt to get a package version from the JDK's release file if the --version option is not specified - PackageType: add LINUX_IMAGE, MAC_IMAGE, WIN_IMAGE items - DottedVersion: bugfix and better coverage; add trim() and pad(); better coverage Changes: https://git.openjdk.org/jdk/pull/29948/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=29948&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8357404 Stats: 1631 lines in 16 files changed: 1490 ins; 63 del; 78 mod Patch: https://git.openjdk.org/jdk/pull/29948.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/29948/head:pull/29948 PR: https://git.openjdk.org/jdk/pull/29948
