--- old/src/jdk.jartool/share/classes/sun/tools/jar/Main.java 2018-06-12 14:49:39.000000000 -0700 +++ new/src/jdk.jartool/share/classes/sun/tools/jar/Main.java 2018-06-12 14:49:38.000000000 -0700 @@ -31,33 +31,34 @@ import java.lang.module.InvalidModuleDescriptorException; import java.lang.module.ModuleDescriptor; import java.lang.module.ModuleDescriptor.Exports; -import java.lang.module.ModuleDescriptor.Provides; import java.lang.module.ModuleDescriptor.Opens; -import java.lang.module.ModuleDescriptor.Requires; +import java.lang.module.ModuleDescriptor.Provides; import java.lang.module.ModuleDescriptor.Version; import java.lang.module.ModuleFinder; import java.lang.module.ModuleReader; import java.lang.module.ModuleReference; -import java.lang.module.ResolutionException; import java.lang.module.ResolvedModule; import java.net.URI; import java.nio.ByteBuffer; -import java.nio.file.Path; import java.nio.file.Files; +import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.StandardCopyOption; +import java.text.MessageFormat; import java.util.*; import java.util.function.Consumer; -import java.util.function.Supplier; +import java.util.jar.Attributes; +import java.util.jar.JarFile; +import java.util.jar.JarOutputStream; +import java.util.jar.Manifest; import java.util.regex.Pattern; import java.util.stream.Collectors; import java.util.stream.Stream; -import java.util.zip.*; -import java.util.jar.*; -import java.util.jar.Pack200.*; -import java.util.jar.Manifest; -import java.text.MessageFormat; - +import java.util.zip.CRC32; +import java.util.zip.ZipEntry; +import java.util.zip.ZipFile; +import java.util.zip.ZipInputStream; +import java.util.zip.ZipOutputStream; import jdk.internal.module.Checks; import jdk.internal.module.ModuleHashes; import jdk.internal.module.ModuleHashesBuilder; @@ -67,10 +68,10 @@ import jdk.internal.module.ModuleTarget; import jdk.internal.util.jar.JarIndex; -import static jdk.internal.util.jar.JarIndex.INDEX_NAME; +import static java.nio.file.StandardCopyOption.REPLACE_EXISTING; import static java.util.jar.JarFile.MANIFEST_NAME; import static java.util.stream.Collectors.joining; -import static java.nio.file.StandardCopyOption.REPLACE_EXISTING; +import static jdk.internal.util.jar.JarIndex.INDEX_NAME; /** * This class implements a simple utility for creating files in the JAR @@ -151,6 +152,8 @@ */ boolean cflag, uflag, xflag, tflag, vflag, flag0, Mflag, iflag, nflag, pflag, dflag; + boolean suppressDeprecateMsg = false; + /* To support additional GNU Style informational options */ Consumer info; @@ -238,6 +241,7 @@ /** * Starts main program with the specified arguments. */ + @SuppressWarnings({"removal"}) public synchronized boolean run(String args[]) { ok = true; if (!parseArgs(args)) { @@ -315,11 +319,14 @@ create(new BufferedOutputStream(out, 4096), manifest); } if (nflag) { + if (!suppressDeprecateMsg) { + warn(formatMsg("warn.flag.is.deprecated", "-n")); + } File packFile = createTemporaryFile(tmpbase, ".pack"); try { - Packer packer = Pack200.newPacker(); + java.util.jar.Pack200.Packer packer = java.util.jar.Pack200.newPacker(); Map p = packer.properties(); - p.put(Packer.EFFORT, "1"); // Minimal effort to conserve CPU + p.put(java.util.jar.Pack200.Packer.EFFORT, "1"); // Minimal effort to conserve CPU try (JarFile jarFile = new JarFile(tmpFile.getCanonicalPath()); OutputStream pack = new FileOutputStream(packFile)) { @@ -332,7 +339,7 @@ try (OutputStream out = new FileOutputStream(tmpFile); JarOutputStream jos = new JarOutputStream(out)) { - Unpacker unpacker = Pack200.newUnpacker(); + java.util.jar.Pack200.Unpacker unpacker = java.util.jar.Pack200.newUnpacker(); unpacker.unpack(packFile, jos); } } finally {