1 . SpringBootServletInitializer 추가
다음과 같은 형식으로 변경
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; @SpringBootApplication public class Application extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(PcwApplication.class, args); } protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(Application.class); } }
2. build.gradle 변경
id 'war' 추가
plugins { id 'org.springframework.boot' version '2.7.0' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' id 'eclipse' id 'war' }
war 플러그인 추가
apply plugin:'war'
bootWar 추가
bootWar { archiveName 'ROOT.war' archiveBaseName = "ROOT" archiveFileName = "ROOT.war" archiveVersion = "0.0.0" }
spring-boot-starter-tomcat 추가
providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
build.gradle 전체 샘플 예
plugins { id 'org.springframework.boot' version '2.7.5' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' id 'eclipse' id 'war' } group = 'com.sample' version = '0.0.1-SNAPSHOT' apply plugin:'war' sourceCompatibility = '11' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } bootWar { archiveName 'ROOT.war' archiveBaseName = "ROOT" archiveFileName = "ROOT.war" archiveVersion = "0.0.0" } dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.2.2' compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:spring-boot-devtools' runtimeOnly 'mysql:mysql-connector-java' annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' implementation 'org.apache.tomcat.embed:tomcat-embed-jasper' implementation 'javax.servlet:jstl:1.2' implementation 'org.jsoup:jsoup:1.15.1' implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.12.4' implementation 'org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4.1:1.16' providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' } tasks.named('test') { useJUnitPlatform() }
3. Gradle Tasks 메뉴 에서 bootWar 를 클릭해서 빌드
Navigator 메뉴와 Gradle Tasks 메뉴가 없다면
window -> show view 에서 Navigator 메뉴와 Gradle Tasks 를 연다.
Gradle Tasks 메뉴 에서 bootWar 를 클릭
Navigator 에서 build -> libs 디렉토리에 빌드된 ROOT.war 파일이 생성 된다.
댓글 ( 0)
댓글 남기기