src/jdk.packager/windows/classes/jdk/packager/internal/windows/WinMsiBundler.java
--- a/src/jdk.packager/windows/classes/jdk/packager/internal/windows/WinMsiBundler.java Mon Aug 27 16:02:55 2018 -0400
+++ b/src/jdk.packager/windows/classes/jdk/packager/internal/windows/WinMsiBundler.java Sat Sep 08 09:20:34 2018 -0400
@@ -477,9 +477,15 @@
private boolean prepareProto(Map<String, ? super Object> p)
throws IOException {
- File appDir = StandardBundlerParam.getPredefinedAppImage(p);
+ File appImage = StandardBundlerParam.getPredefinedAppImage(p);
+ File appDir = null;
- if (appDir == null) {
+ // we either have an application image or need to build one
+ if (appImage != null) {
+ appDir = new File(MSI_IMAGE_DIR.fetchFrom(p), APP_NAME.fetchFrom(p));
+ // copy everything from appImage dir into appDir/name
+ IOUtils.copyRecursive(appImage.toPath(), appDir.toPath());
+ } else {
appDir = APP_BUNDLER.fetchFrom(p).doBundle(p,
MSI_IMAGE_DIR.fetchFrom(p), true);
}