-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
84 lines (62 loc) · 1.75 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
// 应用的插件
apply plugin: 'war'
allprojects {
// 项目的group和version,用于标识这个project
group 'com.zh.gradle'
version '1.0-SNAPSHOT'
apply plugin: 'java'
sourceCompatibility = 1.8
// 使用阿里云服务器进行仓库管理
repositories {
// maven库
def aliyunUrl = "http://maven.aliyun.com/nexus/content/groups/public/"
def artifactUrl = "http://central.maven.org/maven2/"
// 先从url中下载jar若没有找到,则在artifactUrls中寻找
maven {
url aliyunUrl
artifactUrls artifactUrl
}
}
// 依赖管理
dependencies {
compile group: 'junit', name: 'junit', version: '4.12'
compile group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'
}
}
/************************************ Groovy脚本 *********************************************/
/**
* 一个闭包,根据path创建目录,在makeJavaDir中使用
* 如果没有目录结构则通过脚本添加
*/
def createDir = {
path ->
File dir = new File(path)
if(!dir.exists()) {
dir.mkdirs()
}
}
/**
* 自定义任务(在Gradle-Tasks-other中找到这个task)
* 根据paths创建目录
*/
task makeJavaDir() {
def paths = ["src/main/java",
"src/main/resources",
"src/test/java",
"src/test/resources"]
doFirst {
paths.forEach(createDir)
}
}
/**
* 自定义任务
* 创建一个web目录(依赖于java项目的结构)
*/
task makeWebDir() {
// 依赖于makeJavaDir这个task
dependsOn 'makeJavaDir'
def paths = ["src/main/webapp", "src/test/webapp"]
doLast {
paths.forEach(createDir)
}
}