Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tomasbjerre/java-convention-gradle-plugin
Defines the Java conventions I use in my projects
https://github.com/tomasbjerre/java-convention-gradle-plugin
code-formatting gradle-plugin java-convention static-code-analysis
Last synced: 23 days ago
JSON representation
Defines the Java conventions I use in my projects
- Host: GitHub
- URL: https://github.com/tomasbjerre/java-convention-gradle-plugin
- Owner: tomasbjerre
- License: apache-2.0
- Created: 2024-09-28T10:08:52.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2024-12-08T09:14:42.000Z (2 months ago)
- Last Synced: 2024-12-08T10:18:52.645Z (2 months ago)
- Topics: code-formatting, gradle-plugin, java-convention, static-code-analysis
- Homepage: https://search.maven.org/artifact/se.bjurr.gradle.java-convention/se.bjurr.gradle.java-convention.gradle.plugin
- Size: 96.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Java Convention Gradle Plugin
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/se.bjurr.gradle.java-convention/se.bjurr.gradle.java-convention.gradle.plugin/badge.svg)](https://search.maven.org/artifact/se.bjurr.gradle.java-convention/se.bjurr.gradle.java-convention.gradle.plugin)
Defines the Java conventions I use in my projects.
- Code formatting
- Static code analysis, tools and configuration
- Annotation processing, code generation folders
- Plugins, which ones and configuration
- JVM Args## Usage
Apply it with:
```groovy
plugins {
id "se.bjurr.gradle.java-convention" version "X"
}
```It can be tweaked in `gradle.properties` with some properties, the plugin reads them like this:
```groovy
// ---- default config ----
// mainClass: se.bjurr.violations.main.Main
mainClass: project.getProperties().getOrDefault("mainClass", ""),
sourceCompatibility: project.getProperties().getOrDefault("sourceCompatibility", "17"),
targetCompatibility: project.getProperties().getOrDefault("targetCompatibility", "17"),
maxViolations: Integer.parseInt(project.getProperties().getOrDefault("maxViolations", "0")),
formattingExcludedPatterns: project.getProperties().getOrDefault("formattingExcludedPatterns", "**/gen/**,**/generated/**,**/generated-source/**"),
generatedSourceFolders: project.getProperties().getOrDefault("generatedSourceFolders", "src/gen/java,src/generated/java"),
extraTestSourceFolders: project.getProperties().getOrDefault("extraTestSourceFolders", "src/test/generated"),
jarResourcesFolder: project.getProperties().getOrDefault("jarResourcesFolder", "src/jar/resources"),
useViolations: project.getProperties().getOrDefault("useViolations", "true") == "true",
// ---- default config ----
```Works great with https://github.com/tomasbjerre/conventional-release-gradle-plugin