--- old/test/hotspot/jtreg/runtime/appcds/jigsaw/classpathtests/DummyClassesInBootClassPath.java 2018-01-30 11:40:43.137347439 -0800 +++ new/test/hotspot/jtreg/runtime/appcds/jigsaw/classpathtests/DummyClassesInBootClassPath.java 2018-01-30 11:40:42.690305376 -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 @@ -45,6 +45,16 @@ public class DummyClassesInBootClassPath { private static final String METHOD_NAME = "thisClassIsDummy()"; + static void checkOutput(OutputAnalyzer output, String[] classNames) throws Exception { + for (int i = 0; i < classNames.length; i++) { + String cn = classNames[i].replace('/', '.'); + TestCommon.checkExec(output, + "java.lang.NoSuchMethodException: " + cn + "." + + METHOD_NAME); + output.shouldNotContain(cn + ".class should be in shared space."); + } + } + public static void main(String[] args) throws Exception { String classNames[] = { "java/net/HttpCookie", "javax/activation/MimeType"}; @@ -52,8 +62,8 @@ String appJar = TestCommon.getTestJar("dummyClasses.jar"); OutputAnalyzer dumpOutput = TestCommon.dump( - appJar, classNames, "-Xbootclasspath/a:" + appJar); - + appJar, classNames, "-Xbootclasspath/a:" + appJar, + "--add-modules", "java.activation"); List argsList = new ArrayList(); for (int i = 0; i < classNames.length; i++) { argsList.add(classNames[i].replace('/', '.')); @@ -61,27 +71,24 @@ String[] arguments = new String[argsList.size()]; arguments = argsList.toArray(arguments); OutputAnalyzer execOutput = TestCommon.execCommon( - "-cp", TestCommon.getTestDir("."), "-verbose:class", - "--add-modules", "java.activation", - "-Xbootclasspath/a:" + appJar, "DummyClassHelper", - arguments[0], arguments[1]); - for (int i = 0; i < arguments.length; i++) { - TestCommon.checkExec(execOutput, - "java.lang.NoSuchMethodException: " + arguments[i] + "." + - METHOD_NAME); - } + "--add-modules", "java.activation", "-Xbootclasspath/a:" + appJar, + "DummyClassHelper", arguments[0], arguments[1]); + checkOutput(execOutput, classNames); JarBuilder.build(true, "WhiteBox", "sun/hotspot/WhiteBox"); String whiteBoxJar = TestCommon.getTestJar("WhiteBox.jar"); String bootClassPath = "-Xbootclasspath/a:" + appJar + File.pathSeparator + whiteBoxJar; + dumpOutput = TestCommon.dump( + appJar, classNames, bootClassPath, "--add-modules", "java.activation"); argsList.add("testWithWhiteBox"); arguments = new String[argsList.size()]; arguments = argsList.toArray(arguments); String[] opts = {"-XX:+UnlockDiagnosticVMOptions", "-XX:+WhiteBoxAPI", - bootClassPath, "-XX:+TraceClassPaths", "DummyClassHelper", - arguments[0], arguments[1], arguments[2]}; - OutputAnalyzer output = TestCommon.execCommon(opts); + "--add-modules", "java.activation", bootClassPath, "-Xlog:class+path=trace", + "DummyClassHelper", arguments[0], arguments[1], arguments[2]}; + execOutput = TestCommon.execCommon(opts); + checkOutput(execOutput, classNames); } }