@@ -90,7 +90,25 @@ private static String getGradleCmd() {
9090
9191 private static boolean commandExists (String command ) {
9292 try {
93- Process process = new ProcessBuilder (command , "--version" ).start ();
93+ Process process = new ProcessBuilder ().directory (new File (projectRootPom )).command (command , "--version" ).start ();
94+
95+ // Read the output stream
96+ BufferedReader reader = new BufferedReader (
97+ new InputStreamReader (process .getInputStream ())
98+ );
99+ String line ;
100+ while ((line = reader .readLine ()) != null ) {
101+ Log .info (line );
102+ }
103+
104+ // Read the error stream
105+ BufferedReader errorReader = new BufferedReader (
106+ new InputStreamReader (process .getErrorStream ())
107+ );
108+ while ((line = errorReader .readLine ()) != null ) {
109+ Log .info (line );
110+ }
111+
94112 int exitCode = process .waitFor ();
95113 return exitCode == 0 ;
96114 } catch (IOException | InterruptedException exceptions ) {
@@ -100,7 +118,7 @@ private static boolean commandExists(String command) {
100118
101119 private static boolean buildWithTool (String [] buildCommand ) {
102120 Log .info ("Building the project using " + buildCommand [0 ] + "." );
103- ProcessBuilder processBuilder = new ProcessBuilder (buildCommand );
121+ ProcessBuilder processBuilder = new ProcessBuilder (). directory ( new File ( projectRootPom )). command ( buildCommand );
104122
105123 try {
106124 Process process = processBuilder .start ();
@@ -125,7 +143,7 @@ private static boolean buildWithTool(String[] buildCommand) {
125143 * @return true if Maven is installed, false otherwise.
126144 */
127145 private static boolean isMavenInstalled () {
128- ProcessBuilder processBuilder = new ProcessBuilder (MAVEN_CMD , "--version" );
146+ ProcessBuilder processBuilder = new ProcessBuilder (). directory ( new File ( projectRootPom )). command ( MAVEN_CMD , "--version" );
129147 try {
130148 Process process = processBuilder .start ();
131149 BufferedReader reader = new BufferedReader (new InputStreamReader (process .getInputStream ()));
0 commit comments