forked from eugenp/tutorials
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
92 lines (74 loc) · 1.83 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
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'
}