50 import java.util.Optional; 51 import java.util.Arrays; 52 import java.util.stream.Collectors; 53 import java.util.stream.Stream; 54 import java.util.regex.Matcher; 55 import java.util.spi.ToolProvider; 56 import java.lang.module.Configuration; 57 import java.lang.module.ResolvedModule; 58 import java.lang.module.ModuleDescriptor; 59 import java.lang.module.ModuleFinder; 60 import java.lang.module.ModuleReference; 61 62 final class JLinkBundlerHelper { 63 64 private static final ResourceBundle I18N = ResourceBundle.getBundle( 65 "jdk.jpackage.internal.resources.MainResources"); 66 67 static final ToolProvider JLINK_TOOL = 68 ToolProvider.findFirst("jlink").orElseThrow(); 69 70 private JLinkBundlerHelper() {} 71 72 static String listOfPathToString(List<Path> value) { 73 String result = ""; 74 75 for (Path path : value) { 76 if (result.length() > 0) { 77 result += File.pathSeparator; 78 } 79 80 result += path.toString(); 81 } 82 83 return result; 84 } 85 86 static String setOfStringToString(Set<String> value) { 87 String result = ""; 88 89 for (String element : value) { 90 if (result.length() > 0) { 91 result += ","; 92 } 93 94 result += element; 95 } 96 97 return result; 98 } 99 100 static File getMainJar(Map<String, ? super Object> params) { 101 File result = null; 102 RelativeFileSet fileset = 103 StandardBundlerParam.MAIN_JAR.fetchFrom(params); 104 105 if (fileset != null) { 106 String filename = fileset.getIncludedFiles().iterator().next(); 107 result = fileset.getBaseDirectory().toPath(). 108 resolve(filename).toFile(); 109 110 if (result == null || !result.exists()) { 111 String srcdir = 112 StandardBundlerParam.SOURCE_DIR.fetchFrom(params); 113 114 if (srcdir != null) { 115 result = new File(srcdir + File.separator + filename); 116 } 117 } 118 } 119 | 50 import java.util.Optional; 51 import java.util.Arrays; 52 import java.util.stream.Collectors; 53 import java.util.stream.Stream; 54 import java.util.regex.Matcher; 55 import java.util.spi.ToolProvider; 56 import java.lang.module.Configuration; 57 import java.lang.module.ResolvedModule; 58 import java.lang.module.ModuleDescriptor; 59 import java.lang.module.ModuleFinder; 60 import java.lang.module.ModuleReference; 61 62 final class JLinkBundlerHelper { 63 64 private static final ResourceBundle I18N = ResourceBundle.getBundle( 65 "jdk.jpackage.internal.resources.MainResources"); 66 67 static final ToolProvider JLINK_TOOL = 68 ToolProvider.findFirst("jlink").orElseThrow(); 69 70 static File getMainJar(Map<String, ? super Object> params) { 71 File result = null; 72 RelativeFileSet fileset = 73 StandardBundlerParam.MAIN_JAR.fetchFrom(params); 74 75 if (fileset != null) { 76 String filename = fileset.getIncludedFiles().iterator().next(); 77 result = fileset.getBaseDirectory().toPath(). 78 resolve(filename).toFile(); 79 80 if (result == null || !result.exists()) { 81 String srcdir = 82 StandardBundlerParam.SOURCE_DIR.fetchFrom(params); 83 84 if (srcdir != null) { 85 result = new File(srcdir + File.separator + filename); 86 } 87 } 88 } 89 |