2012-02-18 2 views
4

에 JVM을 실행은 .bat files, nonblocking run/launch의 게시물을 읽고 데.BAT 파일 : 배경

난 아직도 내가 필요로 무엇을 달성 할 수 : 시작 명령이 실행되면 가까운 .BAT 파일을 가지고. 내 문제는 JVM이 시작될 때 응용 프로그램이 창을 시작하므로 두 개의 창 (실제로는 .BAT 명령)이 시작 프로세스에 불과하고 사용자에게 의미있는 일을하지 않을 때 . JVM이 시작하면

 

@echo off 
setlocal 
rem Starts the application 

rem Check for Java Home and use that if available 
if not "[%JAVA_HOME%]"=="[]" goto start_app 
echo. JAVA_HOME not set. Application will not run! 
goto end 
:start_app 
echo. Using java in %JAVA_HOME% 
start "Application" "%JAVA_HOME%/bin/java.exe" -jar lib/pathToMyJarFile 
goto end 

:end 

가 나는 종료 할 .BAT 프로세스를하고 싶습니다 (또는 적어도 창을 닫습니다) :

나는 여기에 .BAT 코드를 붙여 넣습니다.

감사합니다, 크리스티안

답변

7

해보십시오 javaw.exe가 있습니다.

+0

감사합니다. javaw를 사용하면 문제가 해결됩니다. (시작/b 옵션을 사용하거나 사용하지 않고) –

+1

박쥐 파일 사용에 문제가 있다고 생각했지만 콘솔없는 Java 시작 프로그램을 사용해야 할 것 같습니다. SUN 설명서 (http://docs.oracle.com/javase/1.4.2/docs/tooldocs/windows/java.html)에서 javaw 명령은 java와 동일하지만 javaw와 연관된 콘솔 창은 없음을 제외하고는 . 명령 프롬프트 창이 나타나지 않게하려면 javaw를 사용하십시오. 그러나 어떤 이유로 시작이 실패 할 경우 javaw 발사기에 오류 정보가있는 대화 상자가 표시됩니다. –

+0

내 원래의 질문 계속 ... 프로그래밍 방식으로 JVM을 호출하는 네이티브 (C++) 응용 프로그램을 작성하려고 생각했습니다. 이 질문은 어떤 상황에서 유용합니까? 내가 설명했던 문제가 더 쉽게 해결 된 것은 아닌 것 같습니다. 감사합니다. 크리스티안 –

1

사용 start /b이 참조 : 대신에 java.exe의

+0

당신이 제공 한 링크가 매우 유용한 정보를 가지고 있지만, 이것은 트릭을하지 못했습니다. 감사! –

+0

물론 기독교인. 확인하기 위해, 당신은 이것을 사용했다. - "start"Application "/ b"% JAVA_HOME %/bin/java.exe "-jar lib/pathToMyJarFile', 맞습니까? –

+0

예, 실제로 그 명령을 사용했습니다. –