2012-11-15 2 views
4

나는 Linux 서버에서 멈출 때까지 실행을 시도하는 jar 실행 파일이 있습니다. 나는 Java Service Wrapper API를 살펴 보았지만, 실제로는 어려웠고 그것이 내가 원하는 것조차 확신하지 못했다. 서버에서 프로그램을 실행할 수있는 방법이있어 프로그램을 계속 로그 오프 할 때 실행이 유지됩니까? 난 서버와 명령 줄에 로그인 항아리를 실행하는 ssh를 사용하고 있습니다. 감사!서버에서 자발적으로 프로그램을 실행하는 방법, 서버에서 무기한으로 Java 프로그램을 실행하는 방법은 무엇입니까?

+0

감사합니다. 당연히 stackoverflow 보트를 바위, 당신들은 끝내 궁금해! * 질문에 답변 함 * – user1747935

+1

답변을 얻게되어 기쁩니다.하지만 수퍼 유저에게 물어 보는 것이 좋을 것입니다. StackOverflow는 * 프로그래밍 * 질문을위한 것입니다 ... –

+0

미안 해요, 팁 주셔서 감사합니다, 내 말은, 프로그래밍과 관련이 있습니다. 리눅스 환경에서 실행중인 java jar 실행 파일과 관련된 것이지만, 당신이 의미하는 바를 봅니다. StackOverflow가 Google에서 빠르게 팝업됩니다. 같은 질문을 가진 다른 PPL을 돕고 싶지만 감사합니다. – user1747935

답변

7

실행 : 마지막에

nohup java -jar myjar.jar & 

앰퍼샌드는 새로운 갈래 과정에서 실행되므로, 로그 아웃 후 계속됩니다. nohup은 소유자가 로그 아웃 할 때 전화를 끊지 않도록합니다.

+2

전 nohup을 추가 할 것입니다. –

+0

팁 주셔서 감사합니다. 내 프로그램에서 다시 확인해야합니다. 이런 일이 발생하지 않았는지 확인하십시오. – user1747935

3

서버를 데몬으로 설정할 수있는 권한이있는 경우 그렇게 할 수 있습니다. 그렇지 않으면 가상 터미널을 만들기 위해 화면과 같은 프로그램을 사용하려고 할 수 있습니다.

screen -r 
+0

감사합니다 !! 하하 나는 이미 그 해답을 알고 있었지만, 이것을 알아 내기 위해 지나쳐야했던 끔찍한 공포를 다른 누군가에게 남기고 싶었다. 고마워 친절한 영혼! – user1747935

1

왜 그래가 :

sudo apt-get install screen 
screen java -jar myJar.jar 

당신이 당신의 터미널을 reatach하려면

! (이것은 서버에서만 작동하고 개인용 컴퓨터에서는 작동하지 않을 수 있음을 명심하십시오.) linux 'screen'명령을 사용하여 로그 오프 한 후 계속할 가상 터미널을 생성하십시오. 지침은 here입니다.

기본적으로 사용 :

$ screen 

는 새로운 가상 터미널 창을 시작합니다. 코드를 시작한 다음 "control + a"를 입력하고 "d"를 입력하여 창에서 분리하십시오. 일단 분리하면 로그 오프 할 수 있고 프로그램은 여전히 ​​서버에서 실행 중입니다. 다시 돌아가려면 다음을 입력하십시오.

$ screen -r 

그리고 다시 프로그램으로 돌아올 것입니다. 쉬워요! Instructions

2

서비스로 실행하려면 daemontools을보십시오.

컴퓨터가 부팅 될 때 프로그램이 시작되고 컴퓨터가 꺼지면 프로그램이 중단되고 컴퓨터가 꺼지면 프로그램이 중지됩니다.

우분투에서 그냥 멀리 얻을 수 있습니다.

관련 문제