< prev index next >
src/java.base/share/classes/com/sun/java/util/jar/pack/Driver.java
Print this page
rev 50498 : 8199871: Deprecate pack200 and unpack200 tools
Reviewed-by:
@@ -54,21 +54,25 @@
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;
/** Command line interface for Pack200.
*/
+
+@SuppressWarnings({"removal"})
class Driver {
private static final ResourceBundle RESOURCE =
ResourceBundle.getBundle("com.sun.java.util.jar.pack.DriverResource");
+ private static boolean suppressDeprecateMsg = false;
public static void main(String[] ava) throws IOException {
List<String> av = new ArrayList<>(Arrays.asList(ava));
boolean doPack = true;
boolean doUnpack = false;
boolean doRepack = false;
boolean doZip = true;
+ suppressDeprecateMsg = av.remove("-XDsuppress-tool-removal-message");
String logFile = null;
String verboseProp = Utils.DEBUG_VERBOSE;
{
// Non-standard, undocumented "--unpack" switch enables unpack mode.
@@ -83,10 +87,14 @@
doUnpack = true;
break;
}
}
+ if (!suppressDeprecateMsg) {
+ printDeprecateWarning(doPack, System.out);
+ }
+
// Collect engine properties here:
Map<String,String> engProps = new HashMap<>();
engProps.put(verboseProp, System.getProperty(verboseProp));
String optionMap;
@@ -393,10 +401,16 @@
return tmpfile.toFile();
}
private static
+ void printDeprecateWarning(boolean doPack, PrintStream out) {
+ String prog = doPack ? "pack200" : "unpack200";
+ out.println(MessageFormat.format(RESOURCE.getString(DriverResource.DEPRECATED), prog));
+ }
+
+ private static
void printUsage(boolean doPack, boolean full, PrintStream out) {
String prog = doPack ? "pack200" : "unpack200";
String[] packUsage = (String[])RESOURCE.getObject(DriverResource.PACK_HELP);
String[] unpackUsage = (String[])RESOURCE.getObject(DriverResource.UNPACK_HELP);
String[] usage = doPack? packUsage: unpackUsage;
@@ -405,10 +419,15 @@
if (!full) {
out.println(MessageFormat.format(RESOURCE.getString(DriverResource.MORE_INFO), prog));
break;
}
}
+ // Print a warning at the end
+ // The full help page is long, the beginning warning could be out of sight
+ if (full && !suppressDeprecateMsg) {
+ printDeprecateWarning(doPack, out);
+ }
}
private static
String getZipComment(String jarfile) throws IOException {
byte[] tail = new byte[1000];
< prev index next >