一、构建项目的作用
(1)依赖管理
(2)测试、打包、发布
二、主流构建工具
(1)ant,编译测试打包
(2)maven,依赖管理、发布
(3)gradle,groovy。不再使用xml形式构建脚本
三、安装
http://www.blogjava.net/wldandan/archive/2012/06/27/381605.html
(1)下载压缩包、解压
(2)配置环境变量
四、groovy高效特性语法
(1)可选的类型定义
类似var
def version =1
(2)断言,和java一致,下面语句会报错
assert version == 2
(3)括号是可选的
println(version)和println version一致
(4)和pathon类似,字符串
双引号可以引入变量,三引号可以加入空格等
def x = '123'
def y = "123 ${version}"
def z= "'1
2
3"'
(5)集合api
def buildTools=['ant','maven']
buildTools<<'gradle'
assert buildTools.getClass==ArraiList
assert buildTools.size==3
运行起来不会被打断,说明可以添加
(6)Map
def buildTools2=['ant':2000,'maven':2001]
buildTools2.gradle=2009
println buildTools2.ant 会打印2000
println buildTools2['gradle'] 会打印2009
println buildTools2.getClass()
(7)闭包
定义在一个函数内部的函数
五、插件
apply plugin: 'java'
apply plugin: 'war' 新增打war包
六、项目
(1)group、name、version确定唯一
(2)apply、dependencies、repositories、task
(3)其它属性
ext、gradle.properties
七、创建自定义任务
初始化---配置---执行 e.g:defpaths不能放在
doFirst等价于
task makeDir() {
def paths = ['src/main/java', 'src/main/resources', 'src/test/java', 'src/test/resources']
doFirst{
paths.forEach(createDir);
}
}
task makeDir() {
dependsOn 'makeDir'
******
}
八、依赖管理
group,name,version
(1)常用仓库
mavenCentral()
jcenter()
mavenLocal()
私服:
maven{
url ‘’
}
(2)网站地址
search.maven.org
(3)多项目构建
https://www.imooc.com/video/14794
九、发布
maven-publish
https://www.imooc.com/video/14797