Gradle project template using:
buildSrc
common scriptsdocs
folder withadr
for project decisionstodo.yaml
for task management
kotlin
languagekotlin-test
common libraries (includingjunit-jupiter
)spotless
andktlint
to manage code conventions
springboot
a minimal setup (with exclusions):web
,context
andbeans
jetty
actuator
production ready endpointssleuth
tracingzalando-logbook
request tracinghttpclient
- default configuration and test-configuration
Convention over Configuration.
The template offers a hook, versions.gradle.kts
, sitting on buildSrc
(that includes the default versions).
It also loads versions.gradle.kts
sitting on root project to override the versions in buildSrc
. The whole idea is to
allow a company package buildSrc
in either a git subtree, or a custom gradle distribution
(see https://docs.gradle.org/current/userguide/organizing_gradle_projects.html#sec:custom_gradle_distribution)
to embed a custom buildSrc
for the company builds.
If multi module setup is used, modules can override default versions either by adding a buildscript
with a
apply(from = "<local.versions.file>")
closure, by adding customextra
properties to buildscript
closure, or by
adding a default versions.gradle.kts
on the root of the module.
There is a Dockerfile to build the project with docker but there's a more advanced version on docker/app/Dockerfile
that uses layered jars to and optimizes build times by reusing layers.
The latter also creates an app image and can also be run with run.sh
or run.bat
scripts.
Please check your host configuration for ports and so before running any docker command.