--- old/src/jdk.jpackage/windows/classes/jdk/jpackage/internal/WinMsiBundler.java 2019-03-20 16:49:58.131282400 -0700 +++ new/src/jdk.jpackage/windows/classes/jdk/jpackage/internal/WinMsiBundler.java 2019-03-20 16:49:56.841153400 -0700 @@ -30,7 +30,6 @@ import java.nio.file.Files; import java.text.MessageFormat; import java.util.*; -import java.util.regex.Matcher; import java.util.regex.Pattern; import static jdk.jpackage.internal.WindowsBundlerParam.*; @@ -965,8 +964,17 @@ out.println( " "); } + + // We should get valid folder or subfolders + String installDir = WINDOWS_INSTALL_DIR.fetchFrom(params); + String [] installDirs = installDir.split(Pattern.quote("\\")); + for (int i = 0; i < (installDirs.length - 1); i++) { + out.println(" "); + } + out.println(" "); + + installDirs[installDirs.length - 1] + "\">"); // dynamic part id = 0; @@ -974,7 +982,9 @@ walkFileTree(params, WIN_APP_IMAGE.fetchFrom(params), out, " "); // closing - out.println(" "); + for (int i = 0; i < installDirs.length; i++) { + out.println(" "); + } out.println(" "); // for shortcuts