기존 스프링 부트 프로젝트 WAR 파일로 배포하는 방법

ino5·2021년 4월 25일
0
post-thumbnail

소개


웹호스팅에 올리기 위해 JAR 패키지로 생성한 스프링 부트 프로젝트를 WAR로 EXPORT할 필요가 생겨, 이에 대해 정리해보았습니다.

기존 스프링 부트 프로젝트를 WAR 파일로 배포하기 위해서는 다음 두가지 사항을 수행해야합니다. (Maven 기준)

1. pom.xml 설정
2. ServletInitalizer 클래스 생성

만약 두번째 과정을 하지 않는다면 war로 배포할 때 404 에러가 발생하게 됩니다.



1. pom.xml 설정


<packaging>war</packaging>

위 코드를 pom.xml에 추가한 뒤에 Maven->Update Project를 합니다.



2. ServletInitalizer 클래스 생성


src/main/java 안에 SpringBootServletInitializer를 상속받는 ServletInitializer 클래스를 추가하여 configure를 overide해줍니다.

package com.example.demo;

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

public class ServletInitializer extends SpringBootServletInitializer{

	@Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
		// TODO Auto-generated method stub
		return builder.sources(DemoApplication.class);
	}
	
}



3. 404 에러 발생 시


예전에 톰캣으로 잘됐던 프로젝트가 원인을 모른 채 404 에러가 발생할 때가 있었는데요. 다시한번 프로젝트 오른쪽 클릭 -> Maven -> Update Project를 해보니 해결이 되었습니다.

profile
궁금한 것을 찾아보거나 문제를 해결한 과정을 날 것의 글로 작성하였습니다.

0개의 댓글