test/runtime/SharedArchiveFile/DefaultUseWithClient.java

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2014, 2016, 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 * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2014, 2017, 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 * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 29,76 **** * java.management * @run main DefaultUseWithClient * @bug 8032224 */ ! import jdk.test.lib.process.ProcessTools; import jdk.test.lib.process.OutputAnalyzer; import jdk.test.lib.Platform; import java.io.File; public class DefaultUseWithClient { public static void main(String[] args) throws Exception { - String fileName = "DefaultUseWithClient.jsa"; - // On 32-bit windows CDS should be on by default in "-client" config // Skip this test on any other platform boolean is32BitWindows = (Platform.isWindows() && Platform.is32bit()); if (!is32BitWindows) { System.out.println("Test only applicable on 32-bit Windows. Skipping"); return; } ! // create the archive ! ProcessBuilder pb = ProcessTools.createJavaProcessBuilder( ! "-XX:+UnlockDiagnosticVMOptions", ! "-XX:SharedArchiveFile=./" + fileName, ! "-Xshare:dump"); ! OutputAnalyzer output = new OutputAnalyzer(pb.start()); ! output.shouldHaveExitValue(0); ! ! pb = ProcessTools.createJavaProcessBuilder( ! "-XX:+UnlockDiagnosticVMOptions", ! "-XX:SharedArchiveFile=./" + fileName, ! "-client", ! "-XX:+PrintSharedSpaces", ! "-version"); ! ! output = new OutputAnalyzer(pb.start()); ! try { ! output.shouldContain("sharing"); ! } catch (RuntimeException e) { ! // if sharing failed due to ASLR or similar reasons, ! // check whether sharing was attempted at all (UseSharedSpaces) ! output.shouldContain("UseSharedSpaces:"); ! } ! output.shouldHaveExitValue(0); } } --- 29,52 ---- * java.management * @run main DefaultUseWithClient * @bug 8032224 */ ! import jdk.test.lib.cds.CDSTestUtils; import jdk.test.lib.process.OutputAnalyzer; import jdk.test.lib.Platform; import java.io.File; public class DefaultUseWithClient { public static void main(String[] args) throws Exception { // On 32-bit windows CDS should be on by default in "-client" config // Skip this test on any other platform boolean is32BitWindows = (Platform.isWindows() && Platform.is32bit()); if (!is32BitWindows) { System.out.println("Test only applicable on 32-bit Windows. Skipping"); return; } ! CDSTestUtils.createArchiveAndCheck(); ! CDSTestUtils.runWithArchiveAndCheck("-client", "-XX:+PrintSharedSpaces"); } }