< prev index next >

src/jdk.jlink/share/classes/jdk/tools/jmod/JmodTask.java

Print this page

        

*** 94,110 **** import jdk.internal.joptsimple.OptionException; import jdk.internal.joptsimple.OptionParser; import jdk.internal.joptsimple.OptionSet; import jdk.internal.joptsimple.OptionSpec; import jdk.internal.joptsimple.ValueConverter; - import jdk.internal.loader.ResourceHelper; import jdk.internal.module.ModuleHashes; import jdk.internal.module.ModuleHashesBuilder; import jdk.internal.module.ModuleInfo; import jdk.internal.module.ModuleInfoExtender; import jdk.internal.module.ModulePath; import jdk.internal.module.ModuleResolution; import jdk.tools.jlink.internal.Utils; import static java.util.stream.Collectors.joining; /** --- 94,111 ---- import jdk.internal.joptsimple.OptionException; import jdk.internal.joptsimple.OptionParser; import jdk.internal.joptsimple.OptionSet; import jdk.internal.joptsimple.OptionSpec; import jdk.internal.joptsimple.ValueConverter; import jdk.internal.module.ModuleHashes; import jdk.internal.module.ModuleHashesBuilder; import jdk.internal.module.ModuleInfo; import jdk.internal.module.ModuleInfoExtender; import jdk.internal.module.ModulePath; import jdk.internal.module.ModuleResolution; + import jdk.internal.module.ModuleTarget; + import jdk.internal.module.Resources; import jdk.tools.jlink.internal.Utils; import static java.util.stream.Collectors.joining; /**
*** 176,186 **** ModuleFinder moduleFinder; Version moduleVersion; String mainClass; String osName; String osArch; - String osVersion; Pattern modulesToHash; ModuleResolution moduleResolution; boolean dryrun; List<PathMatcher> excludes; Path extractDir; --- 177,186 ----
*** 309,319 **** private boolean describe() throws IOException { try (JmodFile jf = new JmodFile(options.jmodFile)) { try (InputStream in = jf.getInputStream(Section.CLASSES, MODULE_INFO)) { ModuleInfo.Attributes attrs = ModuleInfo.read(in, null); ! printModuleDescriptor(attrs.descriptor(), attrs.recordedHashes()); return true; } catch (IOException e) { throw new CommandException("err.module.descriptor.not.found"); } } --- 309,321 ---- private boolean describe() throws IOException { try (JmodFile jf = new JmodFile(options.jmodFile)) { try (InputStream in = jf.getInputStream(Section.CLASSES, MODULE_INFO)) { ModuleInfo.Attributes attrs = ModuleInfo.read(in, null); ! printModuleDescriptor(attrs.descriptor(), ! attrs.target(), ! attrs.recordedHashes()); return true; } catch (IOException e) { throw new CommandException("err.module.descriptor.not.found"); } }
*** 323,333 **** if (c.isEmpty()) { return ""; } return c.stream().map(e -> e.toString().toLowerCase(Locale.ROOT)) .collect(joining(" ")); } ! private void printModuleDescriptor(ModuleDescriptor md, ModuleHashes hashes) throws IOException { StringBuilder sb = new StringBuilder(); sb.append("\n").append(md.toNameAndVersion()); --- 325,337 ---- if (c.isEmpty()) { return ""; } return c.stream().map(e -> e.toString().toLowerCase(Locale.ROOT)) .collect(joining(" ")); } ! private void printModuleDescriptor(ModuleDescriptor md, ! ModuleTarget target, ! ModuleHashes hashes) throws IOException { StringBuilder sb = new StringBuilder(); sb.append("\n").append(md.toNameAndVersion());
*** 363,377 **** .append(" with ") .append(toString(p.providers()))); md.mainClass().ifPresent(v -> sb.append("\n main-class " + v)); ! md.osName().ifPresent(v -> sb.append("\n operating-system-name " + v)); ! ! md.osArch().ifPresent(v -> sb.append("\n operating-system-architecture " + v)); ! ! md.osVersion().ifPresent(v -> sb.append("\n operating-system-version " + v)); if (hashes != null) { hashes.names().stream().sorted().forEach( mod -> sb.append("\n hashes ").append(mod).append(" ") .append(hashes.algorithm()).append(" ") --- 367,384 ---- .append(" with ") .append(toString(p.providers()))); md.mainClass().ifPresent(v -> sb.append("\n main-class " + v)); ! if (target != null) { ! String osName = target.osName(); ! if (osName != null) ! sb.append("\n operating-system-name " + osName); ! String osArch = target.osArch(); ! if (osArch != null) ! sb.append("\n operating-system-architecture " + osArch); ! } if (hashes != null) { hashes.names().stream().sorted().forEach( mod -> sb.append("\n hashes ").append(mod).append(" ") .append(hashes.algorithm()).append(" ")
*** 430,440 **** final Version moduleVersion = options.moduleVersion; final String mainClass = options.mainClass; final String osName = options.osName; final String osArch = options.osArch; - final String osVersion = options.osVersion; final List<PathMatcher> excludes = options.excludes; final ModuleResolution moduleResolution = options.moduleResolution; JmodFileWriter() { } --- 437,446 ----
*** 526,538 **** // --main-class if (mainClass != null) extender.mainClass(mainClass); ! // --os-name, --os-arch, --os-version ! if (osName != null || osArch != null || osVersion != null) ! extender.targetPlatform(osName, osArch, osVersion); // --module-version if (moduleVersion != null) extender.version(moduleVersion); --- 532,544 ---- // --main-class if (mainClass != null) extender.mainClass(mainClass); ! // --os-name, --os-arch ! if (osName != null || osArch != null) ! extender.targetPlatform(osName, osArch); // --module-version if (moduleVersion != null) extender.version(moduleVersion);
*** 673,683 **** * Returns true if it's a .class or a resource with an effective * package name. */ boolean isResource(String name) { name = name.replace(File.separatorChar, '/'); ! return name.endsWith(".class") || !ResourceHelper.isSimpleResource(name); } String toPackageName(Path path) { String name = path.toString(); --- 679,689 ---- * Returns true if it's a .class or a resource with an effective * package name. */ boolean isResource(String name) { name = name.replace(File.separatorChar, '/'); ! return name.endsWith(".class") || Resources.canEncapsulate(name); } String toPackageName(Path path) { String name = path.toString();
*** 1329,1343 **** OptionSpec<String> osArch = parser.accepts("os-arch", getMessage("main.opt.os-arch")) .withRequiredArg() .describedAs(getMessage("main.opt.os-arch.arg")); - OptionSpec<String> osVersion - = parser.accepts("os-version", getMessage("main.opt.os-version")) - .withRequiredArg() - .describedAs(getMessage("main.opt.os-version.arg")); - OptionSpec<Void> doNotResolveByDefault = parser.accepts("do-not-resolve-by-default", getMessage("main.opt.do-not-resolve-by-default")); OptionSpec<ModuleResolution> warnIfResolved --- 1335,1344 ----
*** 1401,1412 **** options.mainClass = getLastElement(opts.valuesOf(mainClass)); if (opts.has(osName)) options.osName = getLastElement(opts.valuesOf(osName)); if (opts.has(osArch)) options.osArch = getLastElement(opts.valuesOf(osArch)); - if (opts.has(osVersion)) - options.osVersion = getLastElement(opts.valuesOf(osVersion)); if (opts.has(warnIfResolved)) options.moduleResolution = getLastElement(opts.valuesOf(warnIfResolved)); if (opts.has(doNotResolveByDefault)) { if (options.moduleResolution == null) options.moduleResolution = ModuleResolution.empty(); --- 1402,1411 ----
< prev index next >