하나의 CMD 스크립트로 두 개의 Java 프로그램을 동기식으로 시작

하나의 CMD 스크립트로 두 개의 Java 프로그램을 동기식으로 시작

API의 MiddleWare가 작동하려면 먼저 시작해야 하는 Java 프로그램이 있습니다. MiddleWare는 Java Jar 파일에 포함되어 있습니다.

일반적으로 두 개의 별도 명령 프롬프트를 열고 jar 파일을 먼저 시작한 다음 Java 프로그램을 두 번째로 실행하면 모든 것이 작동합니다.

저는 지금 고객을 위한 새 프로그램을 준비 중이며 응용 프로그램을 시작하기 전에 MiddleWare를 자동으로 시작하는 방법을 찾고 싶습니다. 이것저것 시도해봤는데,

    @echo off
    set APP_HOME=C:\Temp\Hammer
    rem Set APP_HOME to the place where you installed Hammer.

    if "%~1"=="" (
       echo You must provide a Python script to run.
       pause
    ) else (
       java.exe -jar C:\GMSEC_API\bin\bolt.jar
       java.exe -cp  "%APP_HOME%\lib\jython.jar;%APP_HOME%\lib\Hammer.jar;%APP_HOME%\lib\gmsecapi.jar;%APP_HOME%\examples\Python;%APP_HOME%\jython2.5.3\Lib;%CLASSPATH%" bridenstine.hammer.main.Main %*
    )

그러나 첫 번째 java.exe 명령은 MiddleWare를 먼저 시작하고 종료될 때까지 루프에서 실행되기 때문에 두 번째 java.exe 명령은 ctr^c첫 번째 명령이 실행될 때까지 실행되지 않습니다.

그렇다면 하나의 CMD 파일을 사용하여 두 명령을 동기 방식으로 어떻게 시작할 수 있습니까?

답변1

시작을 사용해 보십시오:

start java.exe -jar C:\GMSEC_API\bin\bolt.jar
start java.exe -cp  "%APP_HOME%\lib\jython.jar;%APP_HOME%\lib\Hammer.jar;%APP_HOME%\lib\gmsecapi.jar;%APP_HOME%\examples\Python;%APP_HOME%\jython2.5.3\Lib;%CLASSPATH%" bridenstine.hammer.main.Main %*

창을 계속 열어두려면 다음을 사용하세요.

start cmd /k java.exe -jar C:\GMSEC_API\bin\bolt.jar
start cmd /k java.exe -cp  "%APP_HOME%\lib\jython.jar;%APP_HOME%\lib\Hammer.jar;%APP_HOME%\lib\gmsecapi.jar;%APP_HOME%\examples\Python;%APP_HOME%\jython2.5.3\Lib;%CLASSPATH%" bridenstine.hammer.main.Main %*

관련 정보