Window | Bat 파일 서비스로 등록 하기

DoItDev·2021년 12월 28일
0
post-thumbnail

Overview

서비스를 진행을 하다보면 여럭 가지 문제에 붇이 치거나 한다.

이번 포스팅의 경우 Jar 파일을 윈도우 서버의 서비스로 만드려고 한다.

준비 해야 할것이 있다. nssm 과 jar 파일 그리고 서비스로 등록할 bat 파일이다.

nssm donlowad

위의 nssm 파일을 다운로드 받는다. 다운로드를 받고 나면 zip 파일로 nssm 이 파일이 생성이 된다.

압축 파일을 푸고 나면 위와 같이 나온다. 여기서 32비트 혹은 64비트가 있는데 서버의 환경에 맞춰서 사용을 하면된다.

service bat

nssm 이 세팅이 다 되었다면 이제는 서비스에 등록할 bat 파일을 만들어 주어야 한다.

@echo OFF

java jar test.jar

위의 처럼 bat 파일을 만들어준다.

윈도우 서비스 등록

다음으로 서비스로 등록을 해주면 된다.

윈도우 cmd 창을 열어서 nssm 이 다운되어있는 위치로 간다.

정확히 말하면 nssm.exe 파일이 위치된 곳으로 간다.

nssm insatll [service_name] [bat_path]

후에 위치된 곳에서 nssm 명령어를 실행을 시켜준다.

윈도우 서비스 삭제

만약에 서비스를 삭제를 하고 싶다면 cmd 창을 관리자 권한으로 실행을 시켜준 뒤

아래의 명령어를 사용해서 서비스를 삭제 시켜준다.

sc delete [service_name] 

트러블 슈팅의 발생

jar 파일을 올리려다가 -Djasypt.encryptor.password= 구문에서 특수기호를 사용하고 있었다.

그렇기 때문에 cmd 에서 특수기호를 못읽을 때가 있다.

단편인 예로 ^,% 인데 이 둘의 경우 ^^,^% 로 변환해서 사용이 가능하다.

하지만 만약에 사용이 안된다고 한다면

-Djasypt.encryptor.password="test^4"

위의 구문처럼 "" 를 사용을 하는 방법도 있다.

profile
Back-End Engineer

0개의 댓글