Я использую код Java для генерации отчета Jasper путем выполнения файла .bat.
Мой код Java использует process.waitsfor () до тех пор, пока процесс не завершится.
Мой код Java
builder = new ProcessBuilder("cmd", "/c", batFilePath, reportName, tmpParFilePath, exportFilePath);
p = builder.start();
//um using threads to consume p.ErrorStream and p.InputStream
p.waitFor();
В моем файле parent.bat я вызываю файл child.bat и не хочу завершать файл parent.bat до того, как файл child.bat завершится.
Это мой файл parent.bat
@echo off
SET CURRENT_DIR_PATH=%~dp0
rem Parameters (%1 = Report Name, %2 = Non-standard Parameters File, %3 = Export File Name)
%CURRENT_DIR_PATH%reportViewer.bat %1.jasper %2 %3
exit 0
А это мой файл child.bat
rem @echo off
rem Parameters (%1 = Report Name, %2 = Non-standard Parameters File)
SET PLANON_JVM_PATH=.\jre\bin
SET VIEWER_JAR_PATH=aia-bi-tools-reportmanager-1.1.jar
SET REPORTS_DIR_PATH=..\reports
SET DATASOURCE_CONFIG_FILE=jdbc.conf
SET PARAMETERS_DIR_PATH=..\reports
SET CURRENT_DIR_PATH=%~dp0
%PLANON_JVM_PATH%\java -jar %CURRENT_DIR_PATH%%VIEWER_JAR_PATH% -
R%CURRENT_DIR_PATH%%REPORTS_DIR_PATH%\%1 -
C%CURRENT_DIR_PATH%%DATASOURCE_CONFIG_FILE% -P%2 -E%3
exit 0
Какие изменения необходимо внести для .batфайлы для выполнения вышеуказанного требования