Package io.quarkus.deployment.util
Class ProcessUtil
- java.lang.Object
-
- io.quarkus.deployment.util.ProcessUtil
-
-
Constructor Summary
Constructors Constructor Description ProcessUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ProcesslaunchProcess(ProcessBuilder builder, boolean shouldRedirectIO)static ProcesslaunchProcessStreamStdOut(ProcessBuilder builder, boolean shouldRedirectIO)static voidstreamErrorTo(PrintStream printStream, Process process)static voidstreamErrorToSysErr(Process process)static voidstreamOutputToSysOut(Process process)static voidstreamToSysOutSysErr(Process process)This is a convenience method which internally calls both thestreamOutputToSysOut(Process)andstreamErrorToSysErr(Process)methods
-
-
-
Method Detail
-
launchProcess
public static Process launchProcess(ProcessBuilder builder, boolean shouldRedirectIO) throws IOException
Launches and returns aProcessbuilt from thebuilder. Before launching the process, this method checks if inherit IO is disabled and if so, streams both theSTDOUTandSTDERRof the launched process usingstreamToSysOutSysErr(Process). Else, it launches the process withProcessBuilder.inheritIO()- Parameters:
builder- The process buildershouldRedirectIO- Whether or notProcessBuilder.Redirect.INHERITcan be used for launching the process- Returns:
- Returns the newly launched process
- Throws:
IOException
-
launchProcessStreamStdOut
public static Process launchProcessStreamStdOut(ProcessBuilder builder, boolean shouldRedirectIO) throws IOException
Launches and returns aProcessbuilt from thebuilder. Before launching the process, this method checks if inheritIO is disabled and if so, streams (only) theSTDOUTof the launched process usingstreamOutputToSysOut(Process)(Process)}. Else, it launches the process withProcessBuilder.inheritIO()- Parameters:
builder- The process buildershouldRedirectIO- Whether or notProcessBuilder.Redirect.INHERITcan be used for launching the process- Returns:
- Returns the newly launched process
- Throws:
IOException
-
streamToSysOutSysErr
public static void streamToSysOutSysErr(Process process)
This is a convenience method which internally calls both thestreamOutputToSysOut(Process)andstreamErrorToSysErr(Process)methods- Parameters:
process- The process whose STDOUT and STDERR needs to be streamed.
-
streamOutputToSysOut
public static void streamOutputToSysOut(Process process)
Streams theprocess'STDOUTto the current process'System.out stream. This creates and starts a thread to stream the contents. TheProcessis expected to have been started inProcessBuilder.Redirect.PIPEmode- Parameters:
process- The process whose STDOUT needs to be streamed.
-
streamErrorToSysErr
public static void streamErrorToSysErr(Process process)
Streams theprocess'STDERRto the current process'System.err stream. This creates and starts a thread to stream the contents. TheProcessis expected to have been started inProcessBuilder.Redirect.PIPEmode- Parameters:
process- The process whose STDERR needs to be streamed.
-
streamErrorTo
public static void streamErrorTo(PrintStream printStream, Process process)
Streams theprocess'STDERRto the givenprintStream. This creates and starts a thread to stream the contents. TheProcessis expected to have been started inProcessBuilder.Redirect.PIPEmode- Parameters:
process- The process whose STDERR needs to be streamed.
-
-