RFR: 8319651: Several network tests ignore vm flags when start java process
Jaikiran Pai
jpai at openjdk.org
Thu Feb 15 12:08:03 UTC 2024
On Mon, 12 Feb 2024 12:51:50 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:
>> Would it be possible to change the `createJavaProcessBuilder` method in ProcessTools to include something to check if -cp is already an argument being passed?
>>
>> maybe something like this?
>>
>>
>> if (!noCP && !args.contains("-cp")) {
>> args.add("-cp");
>> args.add(System.getProperty("java.class.path"));
>> }
>
> That's not a bad idea. What I would recommend in that case would be to not do anything here - but rather log another issue against `ProcessTools.createTestJavaProcessBuilder`.
> Then proceed with this PR without changing anything...
Hello Darragh, Daniel,
As for introducing a new method on `ProcessTools` class, I don't know if it's needed - I feel that the `ProcessTools` class is already getting too complex because of the various similarly named methods. I think it might be better to reuse some of those existing `/test/lib` utility methods to achieve the same, something like:
final List<String> command = new ArrayList<>();
command.add(JDKToolFinder.getJDKTool("java"));
command.addAll(jdk.test.lib.Utils.prependTestJavaOpts("-cp", classpath, className, appArgs));
final ProcessBuilder pb = new ProcessBuilder(command);
final OutputAnalyzer outputAnalyzer = ProcessTools.executeCommand(pb);
I haven't tried out this snippet to be sure this works as expected.
I am not suggesting we do this change in this current PR.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17787#discussion_r1490909855
More information about the security-dev
mailing list