Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8303697

ProcessTools doesn't print last line of process output

XMLWordPrintable

    • b15

        See following example:

        import jdk.test.lib.process.ProcessTools;

        public class Main {


            public static void main(String[] args) throws Exception {
                if (args.length > 0) {
                    System.out.print(args[0]);
                    return;
                }
                // Needed to set property if run without using jtreg.
                System.setProperty("test.jdk", "/Users/lmesnik/tools/jdk-19/macosx-x64");
                Process p1 = ProcessTools.startProcess("process",ProcessTools.createJavaProcessBuilder(Main.class.getName(), "ARG1"));
                p1.waitFor();

                System.out.println(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");

                Process p2 = ProcessTools.startProcess("process",ProcessTools.createJavaProcessBuilder(Main.class.getName(), "ARG2\n"));
                p2.waitFor();

                System.out.println(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");

                Process p3 = ProcessTools.startProcess("process",ProcessTools.createJavaProcessBuilder(Main.class.getName(), "ARG3\nARG3.1"));
                p3.waitFor();
            }
        }

        The output doesn't contain last line:
        Command line: [/Users/lmesnik/tools/jdk-19/macosx-x64/bin/java -cp /Users/lmesnik/IdeaProjects/tests/out/production/tests Main ARG1 ]
        [process]:/Users/lmesnik/tools/jdk-19/macosx-x64/bin/java -cp /Users/lmesnik/IdeaProjects/tests/out/production/tests Main ARG1
        >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        Command line: [/Users/lmesnik/tools/jdk-19/macosx-x64/bin/java -cp /Users/lmesnik/IdeaProjects/tests/out/production/tests Main ARG2
         ]
        [process]:/Users/lmesnik/tools/jdk-19/macosx-x64/bin/java -cp /Users/lmesnik/IdeaProjects/tests/out/production/tests Main ARG2

        [process] ARG2
        >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        Command line: [/Users/lmesnik/tools/jdk-19/macosx-x64/bin/java -cp /Users/lmesnik/IdeaProjects/tests/out/production/tests Main ARG3
        ARG3.1 ]
        [process]:/Users/lmesnik/tools/jdk-19/macosx-x64/bin/java -cp /Users/lmesnik/IdeaProjects/tests/out/production/tests Main ARG3
        ARG3.1
        [process] ARG3

        Process finished with exit code 0

              lmesnik Leonid Mesnik
              lmesnik Leonid Mesnik
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: