자바(Java) 프로세스를 데몬 형식(리눅스 백그라운드)으로 실행 및 중지 하기 위한 순서 입니다. 


1. 적당한 위치 선정.

[daemon@node ~]$ pwd

/home/daemon

[daemon@node ~]$ mkdir commons-daemon

[daemon@node ~]$ cd commons-daemon

2. 데몬 및 관련 소스 다운로드

[daemon@node ]$ wget http://mirror.apache-kr.org//commons/daemon/source/commons-daemon-1.0.15-src.tar.gz

[daemon@node ]$ wget http://www.apache.org/dist/commons/daemon/binaries/commons-daemon-1.0.15.jar

3. 압축 해제 후 이동

[daemon@node ~]$ tar -xzvf commons-daemon-1.0.15-src.tar.gz

[daemon@node ~]$ cd commons-daemon-1.0.15-src/src/native/unix/


4. buildconf 스크립트 실행

[daemon@node ~]$ support/buildconf.sh 

support/buildconf.sh: configure script generated successfully

5. Java 홈정보를 설정후 시스템 configure 실행

[daemon@node ~]$ ./configure --with-java=/usr/java_home

또는

[daemon@node ~]$ export JAVA_HOME=/usr/java/jdk1.6.0_45

[daemon@node ~]$ ./configure


6. jsvc 생성

[daemon@node ~]$ make


7. jsvc 파일을 사용될 위치로 이동

[daemon@node ~]$ mv jsvc ~/commons-daemon/

[daemon@node ~]$ cd ~/commons-daemon/

8. 샘플 구동 

[daemon@node ~]$ cp -r samples ~/commons-daemon/

[daemon@node ~]$ cd ~/commons-daemon/samples/

9. 데몬 구동 및 중지 스크립트 설정

[daemon@node ~]$ vi SimpleApplication.sh

JSVC_HOME=/home/daemon/commons-daemon      # jsvc 파일 위치 디렉토리

JAVA_HOME=/usr/java/jdk1.6.0_45

10. SimpleApplication 컴파일

[daemon@node ~]$ javac -d . SimpleApplication.java

Note: SimpleApplication.java uses unchecked or unsafe operations.

Note: Recompile with -Xlint:unchecked for details.

11. 컴파일된 SimpleApplication.class 파일 모두 jar로 묶음

jar cvf SimpleApplication.jar ./SimpleApplication*.class

added manifest

adding: SimpleApplication.class(in = 3901) (out= 2024)(deflated 48%)

adding: SimpleApplication$Handler.class(in = 4431) (out= 2408)(deflated 45%)

adding: SimpleApplication$ShutdownHook.class(in = 773) (out= 491)(deflated 36%

12. 데몬 스크립트 구동및 중지

[daemon@node ~]$ ./SimpleApplication.sh 

Usage SimpleApplication.sh start | stop


[daemon@node ~]$ ./SimpleApplication.sh start

SimpleApplication: instance 2103957824 created

SimpleApplication: instance 2103957824 init 0

SimpleApplication: loading on port 1200

SimpleApplication: starting

SimpleApplication: started acceptor loop


[daemon@node ~]$ ./SimpleApplication.sh stop

SimpleApplication: stopping

SimpleApplication: exiting acceptor loop

SimpleApplication: stopped


출처 : http://develop.sunshiny.co.kr/1015

'설치 가이드&후기' 카테고리의 다른 글

nginx 설치 - Centos7  (0) 2018.09.13
깃(Git) 저장소 만들기 - 리눅스  (0) 2018.09.11
SVN 사용시 clean up 에러  (0) 2018.09.04

밑에 이미지는 교과서 처럼 보는 Java 책에서 많이 다루는 이미지 입니다. 

아주 간단 명료하게만 정리 해놓은 과정입니다. 

요새 많이 사용되는 메이븐(Maven) 처리 과정 포함하여 설명을 다루고자 합니다.

다들 아시겠지만 1번 과정에선 컴파일이 이루어지면서 자바 소스(Java Source)파일들을 즉, 프로젝트 하위 (/src/main/java) 파일들을 컴파일(Compile)하여 이클립스를 사용한다면,

workspace의 \.metadata\.plugins\org.eclipse.wst.server.core 위치에 프로젝트별로 컴파일 소스를 우선 떨구게 될겁니다. 

그러나 이전에 하는 일이 있죠. 우리가 사용 되고 있는 메이븐(Maven)의 소스들과 설정파일들을 우선 처리하여 파일들을 이동 시켜 놓습니다.

그래서 이전 게시물에 올렸던 메이븐(Maven) pom.xml에서 분기를 처리하여 globals 프로퍼티 파일을 사용 할수 있는 겁니다.


이 내용은 교육 기관이나 이런 곳에선 제가 공부 하다가 딴짓을 했거나 해서 못들었거나? 아니면 그떄는 이해를 못했지만 요새 설명을 귀에 쏙쏙 잘 들어 오게 해주셔서 다시 적습니다.


이렇게 1번의 과정이 끝이 납니다. 이후 2번 과정은 간단합니다. 리소스(Resource) 파일을 가져오고 webapp에 있는 내용들을 가져와서 인터프린터 방식으로 사용자에게 출력을 해줍니다.



+ Recent posts