48 lines
1 KiB
Groovy
48 lines
1 KiB
Groovy
plugins {
|
|
id 'java'
|
|
id 'application'
|
|
id 'net.thauvin.erik.gradle.semver' version '1.0.4'
|
|
id 'com.github.ben-manes.versions' version '0.51.0'
|
|
}
|
|
|
|
// ./gradlew
|
|
// ./gradlew clean incrementPatch run
|
|
// ./gradlew clean incrementMinor run
|
|
// ./gradlew clean incrementMajor run
|
|
|
|
mainClassName = 'com.example.Example'
|
|
|
|
defaultTasks 'run'
|
|
|
|
def semverProcessor = 'net.thauvin.erik:semver:1.2.1'
|
|
|
|
dependencies {
|
|
annotationProcessor semverProcessor
|
|
implementation semverProcessor
|
|
}
|
|
|
|
tasks.withType(JavaCompile) {
|
|
options.annotationProcessorGeneratedSourcesDirectory = file("${projectDir}/src/generated/java")
|
|
options.compilerArgs += [ "-Asemver.project.dir=$projectDir" ]
|
|
}
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
}
|
|
|
|
run {
|
|
doFirst {
|
|
println "Version: $version"
|
|
}
|
|
|
|
// args = ['example.properties']
|
|
args = ['version.properties']
|
|
}
|
|
|
|
semver {
|
|
// properties = 'example.properties'
|
|
// keysPrefix = 'example.'
|
|
// preReleaseKey = 'release'
|
|
// buildMetaKey = 'meta'
|
|
}
|