본문 바로가기
Spring

sts에서 springBoot 프로젝트 war파일로 패키징, Gradle Tasks

by doriver 2024. 4. 10.

build.gradle 파일에 plugins에 id 'war' 을 추가하면 

Gradle Tasks에 bootWar , war 등 war관련된게 생김

 

( Gradle Tasks를 띄워보면 위와같이 어떤 프로젝트에 여러가지 action을 취할수 있는듯 하다 )

 

 

clean 해주고 bootWar 로 SpringBoot프로젝트를 WAR파일로 패키징하면 됨
( extends SpringBootServletInitializer 해줘야 외부 서블릿 컨테이너에서 사용 가능 )

 

 

bootWar태스크

SpringBoot프로젝트를 WAR파일로 패키징하는데 사용됨, 외부 서블릿 컨테이너에 배포할 때 유용.

 

bootWar태스크를 실행하면

SpringBoot애플리케이션의 WAR파일은, 프로젝트 디렉토리 내에 build/libs 폴더에 생성됩니다.

일반적으로 Gradle프로젝트의 빌드 결과물은 build디렉토리 내에 생성되며

그 중 libs폴더는 JAR또는 WAR파일과 같은 실행 가능한 패키지 파일을 저장하는 디렉토리입니다.

 

build.gradle파일에 bootWar { archiveFileName = ' ' } 속성을 추가하면 

build/libs폴더에 (패키징되어)생성되는 WAR파일의 이름을 지정할수 있다

 

 

SpringBootServletInitializer

org.springframework.boot.web.servlet.support.SpringBootServletInitializer

 

이 클래스는 SpringBoot애플리케이션을 WAR( Web Application Archive )파일로 패키징하여 (외부)서블릿 컨테이너(  Apache Tomcat, Jetty 등 )에서 실행할 때 사용됨

extends SpringBootServletInitializer 하고 configure() 메서드를 오버라이드하여 초기화 설정을 구성할 수 있다.

 

https://haenny.tistory.com/179

 

[SpringBoot] SpringBoot war 파일로 Export 하는 방법

build.gradle 설정 스프링부트 프로젝트에 build.gradle 에 war 파일 설정을 해주어야한다. bootWar { archiveBaseName = 'WEBTEMP' archiveFileName = 'WEBTEMP.war' } Window - Show View - Other... - 'gradle' 검색 - Gradle Tasks Open War

haenny.tistory.com

 

 

Jenkins를 사용하면, git repository에서 자동으로 war파일을 던져준다고 한다
???