64 lines
1.3 KiB
Groovy
64 lines
1.3 KiB
Groovy
buildscript {
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
}
|
|
dependencies {
|
|
classpath "net.thauvin.erik.gradle:semver:1.0.5-beta"
|
|
}
|
|
}
|
|
|
|
apply plugin: 'java'
|
|
apply plugin: 'application'
|
|
apply plugin: 'net.thauvin.erik.gradle.semver'
|
|
|
|
mainClassName = 'App'
|
|
|
|
//version = 1.0
|
|
|
|
def f = new File("version.properties")
|
|
|
|
def semverProcessor = 'net.thauvin.erik:semver:1.2.0'
|
|
|
|
dependencies {
|
|
annotationProcessor semverProcessor
|
|
compileOnly semverProcessor
|
|
}
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
jcenter()
|
|
}
|
|
|
|
application {
|
|
println(project.version)
|
|
project.afterEvaluate {
|
|
println(project.version)
|
|
}
|
|
}
|
|
|
|
|
|
incrementBuildMeta {
|
|
doFirst {
|
|
//buildMeta = sprintf("%03d", (buildMeta as Integer) + 1)
|
|
buildMeta = new Date().format("yyyyMMddHHmmss")
|
|
}
|
|
}
|
|
|
|
run {
|
|
doFirst {
|
|
println("Version: $semver.major$semver.separator$semver.minor$semver.separator$semver.patch$semver.preReleasePrefix$semver.preRelease$semver.buildMetaPrefix$semver.buildMeta")
|
|
args = [f.name]
|
|
}
|
|
}
|
|
|
|
task echoVersion(type:Exec) {
|
|
commandLine "echo", "${-> version}"
|
|
}
|
|
|
|
semver {
|
|
properties = "${f.name}"
|
|
keysPrefix = f.name.substring(0, f.name.indexOf(".") + 1)
|
|
buildMetaKey = "meta"
|
|
semverKey = "fullversion"
|
|
}
|