[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-core-libs-dev
Subject:    Re: WiX customization
From:       Alexey Semenyuk <alexey.semenyuk () oracle ! com>
Date:       2019-08-27 15:29:17
Message-ID: 0e7b666c-0061-55c8-c7fa-f31556cb813b () oracle ! com
[Download RAW message or body]

The default WiX source file used by jpackage is [1].
WiX variables set by jpackage and referenced from this file have "Jp" 
prefix. The meaning of the variables is explained in doc comment of [2] 
file. It is also documented what WiX source files are generated by jpackage.

So if you need to customize WiX files generated by jpackage before 
jpackage runs WiX compiler, you can do one of the following from your 
custom "<app-name>-post-image.wsf>" script:
1. Replace the default main.wxs with your own file;
2. Edit the default main.wxs produced by jpackage. You can use 
powershell scripting for this. See [3]

[1] 
http://hg.openjdk.java.net/jdk/sandbox/file/e356758160cd/src/jdk.jpackage/windows/classes/jdk/jpackage/internal/resources/main.wxs


[2] 
http://hg.openjdk.java.net/jdk/sandbox/file/e356758160cd/src/jdk.jpackage/windows/classes/jdk/jpackage/internal/WinMsiBundler.java


[3] 
https://superuser.com/questions/592786/powershell-script-to-update-xml-file-content

- Alexey

On 8/27/2019 8:48 AM, Andy Herrick wrote:
> We are just beginning to work on user documentation, and 
> --resource-dir is one area that will need extensive documentation and 
> examples. (not to mention probably some bug fixes like JDK-8224833 
> <https://bugs.openjdk.java.net/browse/JDK-8224833>).
> 
> basically the proceedure would be as follows:
> 
> 1.) build your installer first using the --temp-root <temp-root-path> 
> and --verbose args.
> 
> 2.) look for verbose output that says something like:
> 
> > Using default package resource <default name> [<resource-type>]   (add 
> > <custom resource name> to the resource-dir to customize).
> > 
> you can look in temp-root-path/config to find all the default 
> resources it used, and customize them as you require
> 
> 2.a) there may also be output that something like:
> 
> > no default package resource   [script to run after application image 
> > is populated]   (add <app-name>-post-image.wsf to the resource-dir to 
> > customize).
> Then you can add you own <app-name>-post-image.wsf   (though there will 
> be no default script in temp-root-path/config to customize).
> 
> 3.) now add --resource-dir <resource-dir> option, create 
> <resource-dir> and put in it <custom resource name> (or as in 2.a, 
> "<app-name>-post-image.wsf>")
> 
> 4.) now run jpackage again and this time it will take the 
> custom-resource instead of the default.
> 
> /Andy
> 
> On 8/27/2019 2:44 AM, Tobias Oelgarte wrote:
> > I would also be interested in that. At least I would like to know 
> > where I can find the default files used by jpackage and how to 
> > override/modify them if needed.
> > 
> > The current documentation only mentions the --resource-dir option, 
> > but does not provide any detailed information.
> > 
> > Am 26.08.2019 um 20:27 schrieb Tom Vasset (tvasset):
> > > Hi,
> > > 
> > > I've been experimenting with jpackage for packaging an app with both 
> > > a win and a mac installer.
> > > 
> > > For the windows installer, are there ways to customize the WiX files 
> > > produced by jpackage? A simple example is to get rid of the default 
> > > red WiX icons in the installer and replace them with product 
> > > specific ones (which I would think anyone building an msi would want 
> > > to do).
> > > 
> > > I've tried to find documentation for how to work with the 
> > > --resource-dir option (which seems to allow a script to be run), but 
> > > I can find no examples of how to use it anywhere...
> > > 
> > > Regards,
> > > 
> > > Tom
> > 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic