프로그램이 종료/닫기/충돌하는 경우 어떻게 자동으로 프로그램을 다시 열 수 있나요?

프로그램이 종료/닫기/충돌하는 경우 어떻게 자동으로 프로그램을 다시 열 수 있나요?

나는 컴퓨터에서 항상 실행되어야 하는 Java JAR 프로그램을 만들었습니다. 프로그램이 닫히면(사용자가 프로그램을 닫았거나 충돌로 인해) 프로그램을 다시 열어야 합니다.

이미 컴퓨터에 로그인할 때마다 자동 시작되도록 관리했는데 어떻게 계속 활성 상태로 유지할 수 있나요?

이것이 프로그래밍 질문인지 아닌지 잘 모르겠습니다. 결국, 자동 시작 프로그램은 프로그래밍 문제가 아니기 때문에 이를 지속성으로 만드는 것도 비슷한 경우가 될 수 있다고 생각했습니다.

답변1

이것을 .bat/ .cmd파일에 넣으세요. java필요에 맞게 호출을 조정합니다 . 자동 시작에서 cmd 파일을 시작합니다. 다음에 시작하기 전에 완료될 때까지 기다려야 하므로 java가 아닌 을 사용해야 합니다 .javaw

:start
"C:\Program Files\java\bin\java" -jar my.jar
goto start

답변2

이를 위해 사용할 수 있는 몇 가지 프로그램이 있습니다. 하나는 CRP(Control Running Program)라고 합니다. 이런 문제가 있을 때 사용하면 아주 좋은 도구입니다.

이에 대한 링크는 다음과 같습니다...........

https://www.raymond.cc/blog/keep-application-running-by-automatically-rerun-when-closed/

이것이 귀하의 질문에 대한 답변이 되기를 바랍니다. 그렇지 않은 경우 알려 주시기 바랍니다.

답변3

.bat 파일을 서비스로 전환하는 방법에 대한 스택 오버플로에 대한 질문이 있습니다.

https://stackoverflow.com/a/13294293

해당 질문에 대한 가장 좋은 대답은 nssm(http://nssm.cc/). Bat 파일이 서비스로 만들어지면 닫힐 때 자동으로 다시 시작됩니다.

귀하의 목적에 따른 사용법은 관리자 프롬프트 내에서 다음과 같습니다.

nssm install yourservicename yourbatfile.bat
nssm start servicename
nssm stop servicename

관련 정보