--- old/test/lib/testlibrary/jdk/testlibrary/ProcessTools.java 2015-11-11 16:40:09.000000000 +0300 +++ new/test/lib/testlibrary/jdk/testlibrary/ProcessTools.java 2015-11-11 16:40:08.000000000 +0300 @@ -27,8 +27,6 @@ import java.io.InputStream; import java.io.OutputStream; import java.io.PrintStream; -import java.lang.management.ManagementFactory; -import java.lang.management.RuntimeMXBean; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.ArrayList; @@ -253,11 +251,13 @@ * * @return Process id */ - public static int getProcessId() throws Exception { - RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean(); - int pid = Integer.parseInt(runtime.getName().split("@")[0]); - - return pid; + public static int getProcessId() { + long pid = ProcessHandle.current().getPid(); + if (pid == (int)pid) { + return (int)pid; + } else { + throw new RuntimeException("int does not suit pid: " + pid); + } } /**