Gradle 和 Maven构建简单Java工程
- 序言
- Maven
- Maven的介绍
- Maven的安装和配置
- Idea使用Maven构建简单的Java工程
- Maven的学习和文档地址
- Gradle
- Gradle的介绍
- Gradle的安装和配置
- Idea使用Gradle构建简单的Java工程
- Gradle的学习和文档地址
序言
本文主要进行Gradle和Maven构建工具的介绍,以及介绍如何使用Gradle和Maven构建一个简单的Java工程。
Maven
Maven的介绍
Maven是一个管理项目的构建,报告和文档的项目管理工具的软件。项目中为什么要使用Maven呢?长话短说,简单理解Maven主要可以带来两点好处:
- Maven具有丰富的构建插件,帮助我们做高定制化的打包构建。我们都知道构建是一个将程序编译成可执行程序后和相关的库,资源文件进行打包的过程,但是有时候需要对应不同的环境做不同的配置,乃至手动修改配置文件,这是一个重复而繁琐的工作。而Maven的插件通过在编译前后等阶段对文件流进行操作,从而支持使得这个过程变得简便和自动化。
- Maven提供了引用库的远程仓库,可以通过Maven特定的地址格式自动从远程加载库到本地并完成引用。这个过程就好像python的pip,nodejs的npm,apt等包(库)管理工具。
链接:Maven仓库库地址
Maven的安装和配置
如果是Linux下Maven的配置请参考博客《Linux 环境下安装Maven》 以下介绍Window10下安装配置Maven的步骤:
- 下载Maven。这里需要注意官方给的提示,需要依赖java版本xx以上等。这里下载bin压缩包即可,有兴趣的同学可以下载源码src包,或者上github研究附上下载地址:Maven官方下载地址
- 运行Maven。下载完毕后将压缩包解压,得到如下文件夹按下win+r,输入cmd回车进入控制台。使用cd命令进入apache-maven-xx文件夹的bin目录,命令过程如下(这不是扫盲文,故不详细介绍)输入mvn -v回车得到如下结果,则说明下载配置完成。(这里不介绍环境变量的配置,环境变量只是把mvn文件所在的目录写入配置,使得cmd中所有位置可以找到mvn文件)
Idea使用Maven构建简单的Java工程
- 打开idea,新建Maven工程
- 这边学需要介绍一下Maven的定位方式,Groupid和ArtifactId被统称为“坐标”是为了保证项目和包的唯一性而提出的。GroupId一般写com.公司(组)名称,ArtifactID写项目名称。如果你现在无法理解这两个参数的作用,没关系,在接下来的Maven工程配置文件中会再次出现。
- 一路next后看到项目界面
- 为Idea配置Maven,点击 file -> setting,在设置页面搜索框输入"Maven"进行搜索
- 设置Maven配置文件,位置在Maven文件夹下的conf/settings.xml,设置结束后点击ok完成配置。
- 编写 Hello World启动程序(这里比较简单我不一一介绍)
- 引用FastJson库,进入Maven库,搜索fastjson,选择阿里的包,进入
- 选择一个版本进入
- 进入后下拉到底部可以看到jar包的依赖项,当然这个依赖项对于我们的demo没有影响,但在以后其他的jar包中你可能需要查看依赖项,防止依赖缺失或冲突
- 回到页面顶部,可以看到这样一段xml。这里又见到了原先提到过的GroupId和ArtifactId对于Maven定位的作用,相信通过接下来的引用操作,可以很容易理解它的含义。
- 将这段xml复制到项目的pom.xml(Maven工程配置文件)文件的dependencies标签下
- 可以看到版本号处报错,这是由于没有引用成功引起的,接下来我们要对fastjson进行引用。点开项目右侧的Maven选项栏,点击刷新按钮进行引用
- 等待下载引用完毕后,可以看到pom.xml中版本号的异常消失,说明引用成功。
- 在启动类中使用fastjson进行验证
选择启动类,右键Run启动
启动成功后可以看到控制台如下输出
总结:通过这段对Maven的使用,我们可以发现Maven带来的第一个好处,那就是jar包的统一管理,和自动化的引用。jar包的统一管理使得我们不必重复的下载库到各个项目中,提高了库的复用性,便于版本管理。自动化的引用简化了包引用的过程,避免重复的人工操作,提高工作效率。
Maven的学习和文档地址
Gradle
Gradle的介绍
如果原先有接触过安卓开发的同学一定对Gradle非常熟悉,Gradle同样也是一款优秀的项目管理和自动化构建工具。Gradle的同样具有Maven的优点,这边我不再一一重复。除此之外,Gradle具有可编程性,使得开发人员对项目的构建更加灵活,具有更高的定制化,使得工具能力不再受到插件掣肘。后面的文章中更多的会介绍Gradle的使用,这并不是说明Maven不如Gradle,Maven具有更多的插件和丰富的中文文档,同样是一款优秀的工具。
Gradle的安装和配置
如果是Linux下Gradle的配置请参考后续博客《CentOS7搭建Jenkins自动化构建》。
- 下载Gradle。附:Gradle下载地址,下载bin压缩包后解压得到以下文件夹
- 运行Gradle确保下载可用,使用cmd进入gradle文件夹下的bin目录输入gradle -v看到以下信息后,说明运行成功
Idea使用Gradle构建简单的Java工程
- 打开idea,新建gradle工程
- 和Maven工程一样填写好项目的标识,后进入Gradle的配置页面,选择本地的Gradle插件,GradleHome为远程包的存放管理位置,可自定义位置。
- 一路next后进入如下界面,则完成了Gradle工程的创建。
- 编写第一个Hello World程序,创建包如下
- 点击File->Project Structures设置java包类型为源代码
- demo包下创建Main类,编写Hello World程序
- 点击Gradle刷新,进行工程构建,编译(注:这一步骤很重要,否则可能会导致无法启动)
- 点击启动后在控制台看到Hello World则说明启动成功
- 引用远程仓库中的FastJson,同样我们进入Maven仓库中FastJson页面,点击Gradle选项,复制Gradle引用代码
compile group: 'com.alibaba', name: 'fastjson', version: '1.2.61'
复制放入build.gradle工程配置文件的dependencies节点下- 点击Gradle刷新按钮进行引用
- 引用成功后修改代码如下
运行后可以看到fastJson正常工作
Gradle的学习和文档地址
Gradle中文文档地址