137 return new String[] {};
138 }
139
140 /**
141 * Create ProcessBuilder using the java launcher from the jdk to be tested and
142 * with any platform specific arguments prepended
143 */
144 public static ProcessBuilder createJavaProcessBuilder(String... command) throws Exception {
145 return createJavaProcessBuilder(false, command);
146 }
147
148 public static ProcessBuilder createJavaProcessBuilder(boolean addTestVmOptions, String... command) throws Exception {
149 String javapath = JDKToolFinder.getJDKTool("java");
150
151 ArrayList<String> args = new ArrayList<>();
152 args.add(javapath);
153 Collections.addAll(args, getPlatformSpecificVMArgs());
154
155 if (addTestVmOptions) {
156 String vmopts = System.getProperty("test.vm.opts");
157 if (vmopts != null) {
158 Collections.addAll(args, vmopts.split("\\s"));
159 }
160 }
161
162 Collections.addAll(args, command);
163
164 // Reporting
165 StringBuilder cmdLine = new StringBuilder();
166 for (String cmd : args)
167 cmdLine.append(cmd).append(' ');
168 System.out.println("Command line: [" + cmdLine.toString() + "]");
169
170 return new ProcessBuilder(args.toArray(new String[args.size()]));
171 }
172 }
|
137 return new String[] {};
138 }
139
140 /**
141 * Create ProcessBuilder using the java launcher from the jdk to be tested and
142 * with any platform specific arguments prepended
143 */
144 public static ProcessBuilder createJavaProcessBuilder(String... command) throws Exception {
145 return createJavaProcessBuilder(false, command);
146 }
147
148 public static ProcessBuilder createJavaProcessBuilder(boolean addTestVmOptions, String... command) throws Exception {
149 String javapath = JDKToolFinder.getJDKTool("java");
150
151 ArrayList<String> args = new ArrayList<>();
152 args.add(javapath);
153 Collections.addAll(args, getPlatformSpecificVMArgs());
154
155 if (addTestVmOptions) {
156 String vmopts = System.getProperty("test.vm.opts");
157 if (vmopts != null && vmopts.length() > 0) {
158 Collections.addAll(args, vmopts.split("\\s"));
159 }
160 }
161
162 Collections.addAll(args, command);
163
164 // Reporting
165 StringBuilder cmdLine = new StringBuilder();
166 for (String cmd : args)
167 cmdLine.append(cmd).append(' ');
168 System.out.println("Command line: [" + cmdLine.toString() + "]");
169
170 return new ProcessBuilder(args.toArray(new String[args.size()]));
171 }
172 }
|