스프링 부트 프레임워크에는 내장 웹 서버(톰캣)가 자동으로 설정되어 있습니다.
그렇기에 우리는 SpringBootApplication을 통해 웹 서버를 작동시킬 수 있습니다.
다음은 스프링부트 기반 jar/war의 내장 웹 서버(톰캣)를 이용해서 윈도우 서비스 등록을 사용 방법에 대해서 설명하겠습니다.
winsw 프로그램 다운로드
https://github.com/kohsuke/winsw/releases
http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/2.1.2/
위의 링크를 통해 winsw의 최신 버전 exe 파일을 다운 받는다.
winsw 설정
winsw.exe 파일과 동일한 폴더 위치에서 다음과 같은 설정 .xml을 만든다
1
2
3
4
5
6
7
8
9
|
<?xml version="1.0" encoding="UTF-8"?>
<service>
<id>서비스명</id>
<name>서비스명</name>
<description>서비스에 대한 설명</description>
<executable>java</executable>
<arguments>-jar "xxxx.jar / xxx.war"</arguments>
<logmode>rotate</logmode>
</service>
|
cs |
winsw.exe 와 설정파일.xml 은 동일한 이름으로 변경한다
-> 주로 프로젝트 명 혹은 서비스 등록 명으로 바꾸면 된다.
xxxx.jar / xxxx.war 의 경우는 자신의 스프링 부트 jar를 입력하면 된다.
서비스 등록
관리자 권한으로 CMD 창을 실행 한다.
관리자 권한으로 실행하지 않을 시 권한 거부 에러가 발행할 수 있다.
위에서 만든 서비스명.exe (winsw.exe) 파일 위치로 이동 한 뒤 아래의 명령어를 친다.
서비스명.exe install
에러가 발생하지 않으면 서비스에 내가 등록한 서비스명으로 서비스가 등록된 것을 확인할 수가 있다.
반대로 등록한 서비스를 삭제하는 방법으로는
서비스명.exe uninstall
또한
서비스는 등록되었으나 서비스 시작 시 발생하는 에러는
동일 폴더 내 log 파일을 확인할 수 있다.
관련 내용 출처
-http://cpsally.blogspot.com/2018/06/spring-boot-as-windows-service.html
'IT > SPRING' 카테고리의 다른 글
AOP를 구성해 본 적이 있나!!! (0) | 2019.06.03 |
---|---|
[SpringBoot][Tools] 인텔리J에서 스프링부트 핫스왑(HotSwap) 적용하기 (0) | 2019.01.03 |
Spring의 DB 세팅 ORACLE 에서 MYSQL 로 변경 (0) | 2018.12.18 |
스프링(Spring)에서 타임 리프(thyemleaf) 사용 (0) | 2018.12.18 |
[SpringFramework] 스프링 프레임워크 다국어 메세지 처리 정리 (0) | 2018.11.21 |