--- old/test/jdk/lib/testlibrary/java/util/jar/CreateMultiReleaseTestJars.java 2018-01-30 23:50:59.773944705 -0800 +++ new/test/jdk/lib/testlibrary/java/util/jar/CreateMultiReleaseTestJars.java 2018-01-30 23:50:59.377944688 -0800 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -69,13 +69,15 @@ + " return 9;\n" + " }\n" + "}\n"; - final private String java10 = java8.replace("8", "10"); + final int currentVersion = Runtime.version().major(); + final String currentVersionStr = Integer.toString(currentVersion); + final private String javaCurrent = java8.replace("8", currentVersionStr); final String readme8 = "This is the root readme file"; final String readme9 = "This is the version nine readme file"; - final String readme10 = "This is the version ten readme file"; + final String readmeCurrent = "This is the current version readme file"; private Map rootClasses; private Map version9Classes; - private Map version10Classes; + private Map versionCurrentClasses; public void buildUnversionedJar() throws IOException { JarBuilder jb = new JarBuilder("unversioned.jar"); @@ -134,9 +136,9 @@ jb.addEntry("META-INF/versions/9/version/Version.java", java9.getBytes()); jb.addEntry("META-INF/versions/9/version/PackagePrivate.java", ppjava9.getBytes()); jb.addEntry("META-INF/versions/9/version/PackagePrivate.class", version9Classes.get("version.PackagePrivate")); - jb.addEntry("META-INF/versions/10/README", readme10.getBytes()); - jb.addEntry("META-INF/versions/10/version/Version.java", java10.getBytes()); - jb.addEntry("META-INF/versions/10/version/Version.class", version10Classes.get("version.Version")); + jb.addEntry("META-INF/versions/" + currentVersionStr + "/README", readmeCurrent.getBytes()); + jb.addEntry("META-INF/versions/" + currentVersionStr + "/version/Version.java", javaCurrent.getBytes()); + jb.addEntry("META-INF/versions/" + currentVersionStr + "/version/Version.class", versionCurrentClasses.get("version.Version")); } public void buildSignedMultiReleaseJar() throws Exception { @@ -186,7 +188,7 @@ input.put("version.PackagePrivate", ppjava9); version9Classes = (new Compiler(input)).setRelease(9).compile(); input.clear(); - input.put("version.Version", java10); - version10Classes = (new Compiler(input)).setRelease(9).compile(); // fixme in JDK 10 + input.put("version.Version", javaCurrent); + versionCurrentClasses = (new Compiler(input)).compile(); // Use default release } }