스프링부트에서 프로젝트를 war 파일로 만드는 법에 대해 살펴보자.
gradle말고 maven에서 빌드하는 방법은 그렇게 어렵지가 않다.
관련된 항목이 잘 설정되어 있는지 체크하여 보자.
1. pom.xml에서 packaging 노드 항목에서의 값(jar, war)을 확인하자.
<!-- 생략.. -->
<artifactId>BootMaven</artifactId>
<version>0.0.1</version>
<packaging>war</packaging>
<name>BootMaven</name>
<!-- 생략.. -->
구글링을 하다보면 packaging항목을 jar로 하라는 글을 볼 수 있는데, jar로 바꾸는 경우 해당 jar를 실행한 이후에, 경로와 관련된 오류가 자주 나타난다.
따라서 war 파일로 배포하는 것을 추천 한다. jar로 하면 웹뷰 오류, 파일저장장소 오류등이 자주 나온다.
2. pom.xml에서 Runnable한 war파일을 원하면 톰캣 jar가 함께 포함되어 있는지 확인하여 주자.
내장형 스타일이 아닌데 명령어를 통해서 실행하면 당연히 동작하지 않는다.
<!-- 생략.. -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
<dependency>
<!-- 생략.. -->
3. application.properties에서 불필요한 파일이나 사용하지 않는 속성은 제거하여주자.
간혹 불필요한 속성을 찾느라 컴파일하는 경우에 오류가 나지는 않지만, 실행도중 오류가 발생 할 수 있다.
사용하지 않는 속성들은 주석 또는 제거하자.
4. maven 설정에서 업데이트 프로젝트를 하여주자.
기존 캐쉬된 설정이 들어갈 수 있으므로 업데이트를 하여주자.
* 빌드방법 --------------------------------
위 4가지 정도의 설정이 끝나면 이제 빌드를 하면된다.
export탭을 눌러서 war파일을 만드는 것이 아니라, Run 탭을 클릭해서 진행하여야 한다.
다음으로 보이는 창에 goals를 package라 써주고, profiles 항목의 내용을 제거하여주자.
profiles에는 pom.xml이라고 기본값으로 설정되는데, 빌드하는 경우 pom.xml이 없다고 오류가 날 수 있다.
위 단계까지하고 Run을 누르면 아래 콘솔창에 다양한 로그와함께 war파일이 출력된다.
만들어진 파일은 중간에 보이는 경로에 위치하고 있다.
통상적으로 workspace 디렉토리에 target 디렉토리가 만들어지고 해당 war파일이 위치하게 된다.
실행방법은 Runnable jar를 실행하는 형태와 동일하다.
java -jar 파일명.war
'Spring framework > Spring boot' 카테고리의 다른 글
Spring boot 인터셉터, Spring boot Interceptor, 스프링부트 인터셉터 (0) | 2019.12.02 |
---|---|
STS git 추가, STS 깃 연동, STS 리눅스 git 서버 연동 (0) | 2019.11.12 |
Spring boot 웹 필터 적용 (0) | 2019.04.30 |
Gradle에서 Lombok이 포함된 프로젝트 export시 유의사항 (0) | 2019.04.29 |
STS 버전 4.2.0에서의 스프링부트 시작 및 빌드하기 (0) | 2019.04.29 |
댓글