Трябва да изпълня пакетен файл от моя JSP, но кодът се премества на следващия ред след командата за изпълнение на пакетния файл и не изчаква пакетният файл да завърши изпълнението. Опитах waitfor()
, но той върви в безкраен цикъл.
Така че сега избрах различно решение, моят пакетен файл, който се изпълнява от JSP, модифицира файл в системата. Така че поставих цикъл while и проверявам за времето на промяна на файла и текущото системно време. Дори и в този случай цикълът while продължава вечно.
Моля, помогнете и в двата подхода.
Process p = Runtime.getRuntime().exec("C:\\TOMCAT\\apache-tomcat-6.0.37\\webapps\\ROOT\\vcc_support_automation\\jsp\\List_user_utility.bat");
SimpleDateFormat sdfDate = new SimpleDateFormat("MM/dd/yyyy HH:mm");
Date now = new Date();
String strDate = sdfDate.format(now);
File file = new File("C:\\TOMCAT\\apache-tomcat-6.0.37\\webapps\\ROOT\\vcc_support_automation\\jsp\\duplicate_users_list.txt");
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm");
String mdfDate = sdf.format(file.lastModified());
strDate.replaceAll("\\s","");
mdfDate.replaceAll("\\s","");
while (true){
if(strDate.equals(mdfDate))
{
System.out.println("hello");
break;
}
}
cmd /C "<your_batch_file>"
? - person aschipfl   schedule 31.07.2015start /WAIT
/start /WAIT /B
? илиcall
?? - person aschipfl   schedule 31.07.2015