반응형
이젠 war 배포를 할 차례이다. spring boot 구성한 프로젝트는 이미 준비되어 있다고 가정한다.
아래와 같이 pom.xml 을 수정한다.
<groupId>com.enowy</groupId>
<artifactId>test</artifactId>
<name>test</name>
<packaging>war</packaging> ### 이 항목을 추가한다.
<description>Test API</description>
.
.
.
.
<build>
.
.
.
<finalName>ROOT</finalName> ### 이렇게 지정해야 tomcat의 server.xml 을 수정하지 않아도 된다.
</build>
build > finalName 을 지정하지 않으면 artifactID + version 이 조합된 파일로 생성되며 호출 URL 가운데 이 경로가 추가된다.
- finalName이 ROOT인경우
- http://testdomain/want_to_make_api
- finalName을 지정하지 않은 경우 중간에 원하지 않는 경로가 추가된다.
- http://testdomain/artifactID + version 이름/want_to_make_api
TestApplication.java 를 수정한다.
@SpringBootApplication
public class TestApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder applicationBuilder)
{
return applicationBuilder(TestApplication.class);
}
}
수정한 프로젝트를 빌드한다.
# pom.xml을 기반으로 package를 만드는데 Test 는 skip 한다.
./mvnw package -P pom.xml -DskipTests
이후 Tomcat의 webapp 밑에 모두 삭제하고 ROOT.war 를 적재한 뒤 Tomcat을 기동한다.
반응형
Comment