I am trying to exceute batch file from a Java program.
The batch file has a command which connects to IBM RTC then gets some data which takes around 30 seconds.
But the program is exiting just after the command is run without waiting for the output.
public static void main(String[] args) {
final String scmCommand = "cmd /c D:\\Coverage\\SCMHistory.bat";
try {
Process process = Runtime.getRuntime().exec(scmCommand);
/*
* final InputStream in = process.getInputStream(); int ch;
* while((ch = in.read()) != -1) { System.out.print((char)ch); }
* final int returnCode = process.waitFor();
*/
try (final BufferedReader b = new BufferedReader(
new InputStreamReader(process.getInputStream()))) {
String line;
while ((line = b.readLine()) != null) {
System.out.println(line);
}
}
**System.out.println("waiting for the process");
process.waitFor();
System.out.println("waiting done");**
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
I have tried adding process.waitFor(); but it didnt work.
set scm_path=D:\Coverage\RTC\jazz\scmtools\eclipse
set userId=ADMIN
set pwd=ADMIN
set repWorkspace="1081"
%scm_path%\scm show history -r https://rtc.repo.com:9443/jazz/ -u %userId% -P %pwd% -w "1411.201411" --component core_as D:\Work\201411\make\main_metadata.xml
Out put of which is
Change sets:
(3129) ----$ Sumit, HARI"main metadata is updated to deploy ch..." 03-Mar-2015 04:09 PM
(3130) ----$Sumit, HARI" "Fixed PartyID issue, checked in " 03-Mar-2015 01:01 PM
(3131) ----$ Sumit, HARI" "adding project to main_metada xml file" 26-Feb-2015 02:46 PM