37 import java.io.IOException; 38 import java.io.PrintStream; 39 import java.util.jar.JarFile; 40 import java.util.jar.Pack200; 41 import java.util.jar.Pack200.Packer; 42 import java.util.jar.Pack200.Unpacker; 43 44 public class PackageVersionTest { 45 private static final File javaHome = new File(System.getProperty("java.home")); 46 47 public final static int JAVA5_PACKAGE_MAJOR_VERSION = 150; 48 public final static int JAVA5_PACKAGE_MINOR_VERSION = 7; 49 50 public final static int JAVA6_PACKAGE_MAJOR_VERSION = 160; 51 public final static int JAVA6_PACKAGE_MINOR_VERSION = 1; 52 53 public final static int JAVA7_PACKAGE_MAJOR_VERSION = 170; 54 public final static int JAVA7_PACKAGE_MINOR_VERSION = 1; 55 56 public static void main(String... args) throws IOException { 57 if (!javaHome.getName().endsWith("jre")) { 58 throw new RuntimeException("Error: requires an SDK to run"); 59 } 60 61 File out = new File("test.pack"); 62 createClassFile("Test6"); 63 createClassFile("Test7"); 64 65 verify6991164(); 66 67 verifyPack("Test6.class", JAVA6_PACKAGE_MAJOR_VERSION, 68 JAVA6_PACKAGE_MINOR_VERSION); 69 70 // a jar file devoid of indy classes must generate 160.1 package file 71 verifyPack("Test7.class", JAVA6_PACKAGE_MAJOR_VERSION, 72 JAVA6_PACKAGE_MINOR_VERSION); 73 74 // test for resource file, ie. no class files 75 verifyPack("Test6.java", JAVA5_PACKAGE_MAJOR_VERSION, 76 JAVA5_PACKAGE_MINOR_VERSION); 77 Utils.cleanup(); 78 } 79 80 static void verify6991164() { | 37 import java.io.IOException; 38 import java.io.PrintStream; 39 import java.util.jar.JarFile; 40 import java.util.jar.Pack200; 41 import java.util.jar.Pack200.Packer; 42 import java.util.jar.Pack200.Unpacker; 43 44 public class PackageVersionTest { 45 private static final File javaHome = new File(System.getProperty("java.home")); 46 47 public final static int JAVA5_PACKAGE_MAJOR_VERSION = 150; 48 public final static int JAVA5_PACKAGE_MINOR_VERSION = 7; 49 50 public final static int JAVA6_PACKAGE_MAJOR_VERSION = 160; 51 public final static int JAVA6_PACKAGE_MINOR_VERSION = 1; 52 53 public final static int JAVA7_PACKAGE_MAJOR_VERSION = 170; 54 public final static int JAVA7_PACKAGE_MINOR_VERSION = 1; 55 56 public static void main(String... args) throws IOException { 57 File out = new File("test.pack"); 58 createClassFile("Test6"); 59 createClassFile("Test7"); 60 61 verify6991164(); 62 63 verifyPack("Test6.class", JAVA6_PACKAGE_MAJOR_VERSION, 64 JAVA6_PACKAGE_MINOR_VERSION); 65 66 // a jar file devoid of indy classes must generate 160.1 package file 67 verifyPack("Test7.class", JAVA6_PACKAGE_MAJOR_VERSION, 68 JAVA6_PACKAGE_MINOR_VERSION); 69 70 // test for resource file, ie. no class files 71 verifyPack("Test6.java", JAVA5_PACKAGE_MAJOR_VERSION, 72 JAVA5_PACKAGE_MINOR_VERSION); 73 Utils.cleanup(); 74 } 75 76 static void verify6991164() { |