Based on this Spring Boot app template. Sources was not changed almost, only build script adjusted
- JDK 21
- Docker
Composite Build is externalization of build by put dependencies and plugins into separate Git repository (which added to project as Git submodule)
After that build script looks like this:
service(version = "0.0.1") {
dependencies {
springBoot {
web()
test()
dataJpa()
validation()
...
}
lombok()
apacheCommonsLang()
mapstruct()
springFox()
postgres()
flywayCore()
testContainers()
postgresTestContainers()
...
}
}
git submodule init
git submodule update
gradlew clean build