92 lines
1.8 KiB
Groovy
92 lines
1.8 KiB
Groovy
allprojects {
|
|
repositories {
|
|
jcenter()
|
|
}
|
|
}
|
|
|
|
|
|
subprojects {
|
|
|
|
version = '1.0'
|
|
}
|
|
|
|
apply plugin: 'eclipse'
|
|
|
|
println 'This will be executed during the configuration phase.'
|
|
|
|
task configured {
|
|
println 'This will also be executed during the configuration phase.'
|
|
}
|
|
|
|
task execFirstTest {
|
|
doLast {
|
|
println 'This will be executed during the execution phase.'
|
|
}
|
|
}
|
|
|
|
task execSecondTest {
|
|
doFirst {
|
|
println 'This will be executed first during the execution phase.'
|
|
}
|
|
doLast {
|
|
println 'This will be executed last during the execution phase.'
|
|
}
|
|
println 'This will be executed during the configuration phase as well.'
|
|
}
|
|
|
|
task welcome {
|
|
doLast {
|
|
println 'Welcome on the Baeldung!'
|
|
}
|
|
}
|
|
|
|
task welcomeWithGroup {
|
|
group 'Sample category'
|
|
doLast {
|
|
println 'Welcome on the Baeldung!'
|
|
}
|
|
}
|
|
|
|
task welcomeWithGroupAndDescription {
|
|
group 'Sample category'
|
|
description 'Tasks which shows welcome message'
|
|
doLast {
|
|
println 'Welcome on the Baeldung!'
|
|
}
|
|
}
|
|
|
|
class PrintToolVersionTask extends DefaultTask {
|
|
String tool
|
|
|
|
@TaskAction
|
|
void printToolVersion() {
|
|
switch (tool) {
|
|
case 'java':
|
|
println System.getProperty("java.version")
|
|
break
|
|
case 'groovy':
|
|
println GroovySystem.version
|
|
break
|
|
default:
|
|
throw new IllegalArgumentException("Unknown tool")
|
|
}
|
|
}
|
|
}
|
|
|
|
task printJavaVersion(type : PrintToolVersionTask) {
|
|
tool 'java'
|
|
}
|
|
|
|
task printGroovyVersion(type : PrintToolVersionTask) {
|
|
tool 'groovy'
|
|
}
|
|
|
|
import com.baeldung.PrintToolVersionBuildSrcTask
|
|
|
|
task printJavaVersionBuildSrc(type : PrintToolVersionBuildSrcTask) {
|
|
tool 'java'
|
|
}
|
|
|
|
task printGroovyVersionBuildSrc(type : PrintToolVersionBuildSrcTask) {
|
|
tool 'groovy'
|
|
} |