# HG changeset patch # User sla # Date 1408615340 -7200 # Thu Aug 21 12:02:20 2014 +0200 # Node ID 05b391ad8f50383f74fb1191c43c42186b989147 # Parent 0aa1bc5db42cb7b66678181bc32fefdb8bafcba8 [mq]: 8055677-nmthelper diff --git a/test/java/lang/instrument/NMTHelper.java b/test/java/lang/instrument/NMTHelper.java --- a/test/java/lang/instrument/NMTHelper.java +++ b/test/java/lang/instrument/NMTHelper.java @@ -21,8 +21,12 @@ * questions. */ +import java.io.File; +import java.io.FileWriter; import java.util.regex.Matcher; import java.util.regex.Pattern; +import java.util.Arrays; +import java.util.stream.Collectors; import sun.management.ManagementFactoryHelper; import com.sun.management.DiagnosticCommandMBean; @@ -52,15 +56,15 @@ DiagnosticCommandMBean dcmd = ManagementFactoryHelper.getDiagnosticCommandMBean(); Object[] dcmdArgs = {args}; String[] signature = {String[].class.getName()}; - - try { - System.out.print("> " + cmd + " "); - for (String s : args) { - System.out.print(s + " "); - } - System.out.println(":"); - String result = (String) dcmd.invoke(cmd, dcmdArgs, signature); - System.out.println(result); + + String cmdString = cmd + " " + + Arrays.stream(args).collect(Collectors.joining(" ")); + File f = new File("dcmdoutput-" + cmd + "-" + System.currentTimeMillis() + ".txt"); + System.out.println("Output from Dcmd '" + cmdString + "' is being written to file " + f); + try (FileWriter fw = new FileWriter(f)) { + fw.write("> " + cmdString + ":"); + String result = (String) dcmd.invoke(cmd, dcmdArgs, signature); + fw.write(result); return result; } catch(Exception ex) { ex.printStackTrace(); diff --git a/test/java/lang/instrument/RedefineBigClass.sh b/test/java/lang/instrument/RedefineBigClass.sh --- a/test/java/lang/instrument/RedefineBigClass.sh +++ b/test/java/lang/instrument/RedefineBigClass.sh @@ -27,7 +27,7 @@ # @author Daniel D. Daugherty # # @run shell MakeJAR3.sh RedefineBigClassAgent 'Can-Redefine-Classes: true' -# @run build BigClass RedefineBigClassApp +# @run build BigClass RedefineBigClassApp NMTHelper # @run shell/timeout=600 RedefineBigClass.sh # diff --git a/test/java/lang/instrument/RetransformBigClass.sh b/test/java/lang/instrument/RetransformBigClass.sh --- a/test/java/lang/instrument/RetransformBigClass.sh +++ b/test/java/lang/instrument/RetransformBigClass.sh @@ -27,7 +27,7 @@ # @author Daniel D. Daugherty # # @run shell MakeJAR4.sh RetransformBigClassAgent SimpleIdentityTransformer 'Can-Retransform-Classes: true' -# @run build BigClass RetransformBigClassApp +# @run build BigClass RetransformBigClassApp NMTHelper # @run shell/timeout=600 RetransformBigClass.sh #