RFR: 8319457: Update jpackage to support WiX Toolset 4 on Windows

Alexey Semenyuk asemenyuk at openjdk.org
Mon Jun 3 22:34:59 UTC 2024


Add support for WiX4 in jpackage.

jpackage supports both WiX3 and WiX4. It will pick WiX4 if both versions are installed.

Custom WiX3 sources will be automatically converted to WiX4 format if WiX4 is used. The converter provides:

- full support of the conversion of WiX L10N (.wxl) files, i.e. full support of "http://schemas.microsoft.com/wix/2006/localization" to "http://wixtoolset.org/schemas/v4/wxl" namespace conversion;
- partial support of WiX source (.wxs) files, i.e. partial support of "http://schemas.microsoft.com/wix/2006/wi" to "http://wixtoolset.org/schemas/v4/wxs" namespace conversion;

The converter is a XSLT stylesheet. The default converter is `src/jdk.jpackage/windows/classes/jdk/jpackage/internal/resources/wix3-to-wix4-conv.xsl`. It can be replaced with the custom converter by adding "wix-conv.xsl" file to the resource directory.

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

Commit messages:
 - Revert "Revert "Rollback unneeded change""
 - Support the use of custom wix source converter
 - Ensure WiX source converter works with the default JDK XSLT processor and Saxon HE (v12.4)
 - Revert "Rollback unneeded change"
 - Rollback unneeded change
 - Merge branch 'master' into JDK-8319457
 - Don't suppress jpackage output when it is detecting what packaging tools available and what bundlers are supported.
 - Fix issue with running jtreg tests when wix.exe is not available in the PATH. When wix.exe is not in the PATH, jpackage uses %USERPROFILE% env variable to get user home directory. But jtreg removes it from the environment when running tests, so without wix.exe in the PATH all jpackage tests will fail on Windows. This makes it impossible to test jpackage with wix3. This patch addresses this issue by reading user home additionally from "java.home" system property.
 - Merge branch 'master' into JDK-8319457
 - Got rid of Wix36 WiX toolset type
 - ... and 16 more: https://git.openjdk.org/jdk/compare/5abc0292...fbb9f418

Changes: https://git.openjdk.org/jdk/pull/19318/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19318&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8319457
  Stats: 1485 lines in 22 files changed: 1154 ins; 91 del; 240 mod
  Patch: https://git.openjdk.org/jdk/pull/19318.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19318/head:pull/19318

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


More information about the build-dev mailing list