一、简介
代码三大构建工具,Ant、Maven和Gradle。现在的状况是Maven和Gradle并存,Gradle使用的越来越广泛。
二、Maven和Gradle区别
Maven的主要功能是多模块构建、依赖管理系统、一致的项目结构、一致的项目构建模型和插件机制。主要体现以下5点
- 多模块构建
现在的项目中,一般我们会将一个项目分解是多个模块。在Maven中需要定义一个parent POM作为一组module的通用配置,我们可以用<modules>标签来定义一组子模块
在Gradle也支持多模块构建,在parent的build.gradle中可以使用subprojects和allprojects定义所有的子模块。对于子模块的定义可以放在setting.gradle文件中。
2.依赖管理系统
在Maven中,可以用GroupID、ArtifactID、Version组成一个唯一的标识。任何Maven项目都必须要定义这三个属性。GroupID相当于package,ArtifactID相当于Class。
Gradle支持动态的版本依赖,在版本号后面使用+号可以实现动态的版本管理。
3.一致的构建模型
Maven设置了标准的项目周期,包含验证、初始化、生成原始的数据、处理原始数据、生成资源、处理资源、编译、处理类。。。。等等。而Gradle更加的灵活,可以创建一个task,并随时通过depends建立与已有task的依赖关系
4.一致的项目结构
Maven指定了一套标准的项目结构作为java项目结构,Gradle也是沿用了这套标准。在Gradle中只需在文件中包含applyplugin:'java',系统既可以自动识别
5.插件机制
两者都采用了插件机制
三、Eclipse中使用Gradle下载Jar包
1.下载Gradle并配置环境变量
下载地址:https://gradle.org/install/
-
gradle解压到某个目录下,比如/Users/haidiyixiaoyu/workspace/software/gradle-6.0.1
-
把 gradle的bin 目录加到环境变量中,Mac 是编辑
~/.bash_profile
红色部分
终端输入命令gradle -v,打印版本信息表示配置成功
haidiyioyudembp:~ haidiyixiaoyu$ cat .bash_profile export PATH=/usr/local/bin:/usr/local/sbin:~/bin:$PATH export PATH=${PATH}:$GRADLE_HOME/bin export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home GRADLE_HOME=/Users/haidiyixiaoyu/workspace/software/gradle-6.0.1 export GRADLE_HOME |
2.Eclipse中安装插件
利用 Install new softwate -> Install, 输入插件网址 http://dist.springsource.com/release/TOOLS/gradle,安装完需要重启 Eclipse。
然后右键项目,Configure -> Convert to Gradle Project,完成后会发现项目左上角有个 G 的
利用Gradle下载依赖 Jar 包
注意在build.gradle文件里的compile 'com.qiniu:qiniu-java-sdk:7.0.+'
就是我们需要的 jar 包。待会 gradle 就会根据该配置下载jar 包,gradle 还会分析其中的依赖关系将所有需要的包一并下载。
项目右键,点击 Gradle -> Refresh All
可以看到控制台输出如下信息,表示正在下载jar 包。从中也可以看出,虽然我们只写了一个qiniu:qiniu Jar 包,但是它依赖于okhttp、okio等,gradle 会帮助我们一并下载。