Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8223643

Provide better defined context for custom installer steps on Windows



    • Enhancement
    • Resolution: Fixed
    • P3
    • internal
    • internal
    • tools
    • generic
    • windows


      We need better defined support for custom installation steps in jpackage. Mostly to facilitate requirements of JDK-8211236 but in general to make it easier for users to extend standard installers generated by jpackage.
      Currently jpackage will run <APP_NAME>-post-image.wsf script from app directory if there is one before running WiX tools. This script should be provided by the user.
      However there is no defined context in which this script will run. Names of wix sources generated by jpackage are not specified. Contents of the main wix source is not specified. All this is implementation details and subject for change. This makes the task of creating and maintaining <APP_NAME>-post-image.wsf script difficult across multiple versions of jpackage.

      We need to define in spec:
      - names of wix source files jpackage generates.
      - template of the main wix source generated by jpackage. Currently we use template.wxs as a template, replace strings like APPLICATION_VERSION, APPLICATION_NAME in this template with actual values, save the file with replaced strings in temporary directory before processing it with candle.exe.
      The suggestion is to rework template.wxs so that to copy it into temporary directory as is, instead of doing string substitution use WiX variables and pass their values on candle.exe command line. This will allow users to use these variables in their custom wix sources. The list of WiX variables set by jpackage should be defined in spec as well.

      If we don't want to add these implementation specific details to JEP, we should put them in documentation of WinMsiBundler.java.


        Issue Links



              asemenyuk Alexey Semenyuk
              asemenyuk Alexey Semenyuk
              0 Vote for this issue
              2 Start watching this issue