728x90
gradle muliti project 인 경우 sub 모듈만 따로 war 로 빌드를 하기 위한 내용을 정리해본다.
구성
- server-api : API 서버
- common : 공통 모듈(domain, dao)
gradle 5.X 이상일 경우
- build.gradle (root)
project(':server-api') {
dependencies {
compile project(':common')
}
}
server-api, common 을 가진 project 에서 server-api 만 war 로 빌드한다.
- build.gradle(:server-api)
apply plugin: 'war'
bootWar.archiveName = 'multiplatform-auth-server-api.war'
dependencies {
compile project(':common')
implementation ('org.springframework.boot:spring-boot-starter-web') {
exclude module: "spring-boot-starter-logging"
exclude module: "logback-classic"
}
compile 'com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.9.8'
...
}
gradle 5.X 이하일 경우
- build.grade(:web) : 위에서 web 이라는 모듈은 없지만 mkyong.com 예제를 그대로 사용함.
project(':web') {
apply plugin: 'war'
war {
archiveName 'hello-gradle.war'
}
dependencies {
compile project(':core')
providedCompile 'javax.servlet:servlet-api:2.5'
providedCompile 'org.apache.tomcat:tomcat-jsp-api:7.0.55'
//...
}
}
참고 :
https://mkyong.com/gradle/gradle-war-plugin-change-output-war-filename/
'Engineering > Java' 카테고리의 다른 글
maven 에 if condition 추가 (0) | 2020.12.22 |
---|---|
The POM for com.microsoft.sqlserver:sqljdbc4:jar:4.0 is missing, no dependency information available (0) | 2020.10.28 |
logger info {} 사용 (0) | 2020.08.06 |
log4j2 , logback 설정 (0) | 2020.06.29 |
InteliJ 설치 후 Lombok 설정 (0) | 2019.11.06 |