A gradle plugin to share best-practice project configurations.
Link: plugins.gradle.org/plugin/me.philippheuer.configuration
Add the plugin to your build.gradle
:
plugins {
id 'me.philippheuer.configuration' version '+'
}
You can configure your project with a few simple parameters:
Example:
projectConfiguration {
language.set(me.philippheuer.projectcfg.domain.ProjectLanguage.JAVA)
type.set(me.philippheuer.projectcfg.domain.ProjectType.APP)
framework.set(me.philippheuer.projectcfg.domain.ProjectFramework.SPRINGBOOT)
}
Note: You can apply this plugin to each of your project modules independently, if your project contains different project types.
Options:
Option | Description | allowed values |
---|---|---|
language | the language | JAVA, KOTLIN |
type | the project type | APP, BATCH, LIBRARY |
framework | your framework of choice (optional) | SPRINGBOOT, QUARKUS |
Description | Link |
---|---|
MavenCentral Library | ... |
Private Library | ... |
SpringBoot Microservice | ... |
Quarkus Microservice | ... |
There are options to further configure each feature
, these links document what a feature
does by default and what customization options are available.
Type | Name | Docs |
---|---|---|
Type | Application | view |
Type | Library | view |
Policy | Gradle Wrapper Version | view |
Framework | SpringBoot | view |
Framework | Quarkus | view |
Feature | Lombok | view |
Feature | Javadoc | view |
Feature | Test Logging | view |
Feature | Shadow | view |
Feature | JUnit5 | view |
Feature | Manifest | view |
Feature | VersionUpgrade | view |
Check | Checkstyle (Java) | view |
Check | Detekt (Kotlin) | view |
This plugin may include the following plugins based on your project configuration:
- Lombok
- Gradle Test Logger
- Shadow
- Manifest
- Gradle Versions Plugin
- Quarkus
- SpringBoot
- Checkstyle
- Detekt
Released under the MIT License.