打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
从DevOps到AIOps(四):编译工具

书接上文,本文我们介绍一下DevOps工具集里面的编译工具。通常来讲,DevOps里面集成的编译工具都是市面上比较流行的主流编译工具。主要有以下几种:

一、 Ant

Apache Ant是上古时期实现软件编译过程自动化的工具,最早来自于2000Apache Tomcat项目开发。Ant不仅能够支持Java项目,CC++项目也可以使用Ant作为自动化构建工具。

Ant使用模块扩展了shell命令的方式,使用XML格式的配置未见编排构建任务,使用task模块搭建构建任务。使用Ant编排自动化构建任务时需要编写一个XMLbuildfile文件,所有的构建步骤都在这个文件中定义,执行Ant命令将会调用这个buildfile进行构建。Buildfile是一个XML格式文件,定义项目的相关信息和构建任务编排。所有的任务按照target模块划分。

二、 Maven

Maven最早被用于Java项目的自动化构建,它的意思是知识的累加器,实现了构建软件的两个功能:软件如何构建和构建的依赖关系。基于项目对象模型(POM)理念,Maven能管理项目的构建、报告和文档化。POM文件是xml格式,是Maven的基础文件,包含项目的重要信息,以one-stop-shopping的方式查找项目的信息。

设计Maven目的如下:

(1) 构建过程更简洁

(2) 使用同一的构建系统

(3) 提供有效的项目信息

(4) 为最佳开发实践提供指导

(5) 为新功能提供平滑的迁移

三、Gradle

Apache AntMaven统治着自动化build工具市场很多年,但是Gradle2009年现身,从那时起它就迈着稳定增长的步伐越来越流行。Gradle是基于Apache AntMaven概念的自动化构建工具,AntMaven都有各自的局限,Ant无法简单地支持频繁修改依赖关系的项目,而Maven相对功能单一,两者都是基于XML格式文件,不利于设计ifswitch等判断式语句,Gradle改良了这些问题,引入了一种基于GroovyDSL来描述build。在2016年,Gradle团队还发布了一种基于KotlinDSL,因此用户现在也可以用Kotlin来编写build的脚本。

Gradle最好的设计是增量build,因此可以节省大量的编译时间。根据Gradle性能报告,它比Maven100倍。这样的性能优势一部分来源于这种增量设计,另外也得益于Gradlebuild缓存daemonbuild缓存重用task的输出,而GradleDaemonbuild的信息储存在内存里,可以在多个build间共享。总的来说,Gradle让快速交付成为可能,也让配置更加灵活。

活在信息时代的其它文章:

Java程序员应知应会之Spring AOP详解

从DevOps到AIOps(三):持续集成工具

从DevOps到AIOps(二):协同开发工具

从DevOps到AIOps(一):DevOps的背景与发展

自然语言处理(一):从试图建立规则到试图适应规则

Nginx的负载均衡没起作用?原来原因在这里

移动开发知识:Android平台如何进行蓝牙模块开发

Java程序员应知应会之Maven和Gradle的区别

PHP到底适不适合做大型网站?

GIS开发?你不得不了解的那些行业标准

程序员应知应会之MySQL的存储引擎

程序员应知应会之数据库发展简史

程序员应知应会之二进制小数的计算

高薪程序员必备知识:图数据库

JDK13新特性详解:老旧的Socket API是如何被重写的

Java Web程序员应知应会:Jsp的内置对象与应用

如何在图片与文字之间互相检索?程序员不可不知的跨模态技术

高级Java程序员必备的二十个技术点,你会了吗?(一)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
AndroidStudio Gradle 和 Gradle plugin的区别
Android Gradle编译学习日记之一(搭建 Gradle 环境以及编译 Android 应用)
好程序员Java培训分享maven-概述
Java程序员必备的开发工具
Jenkins常用构建工具
15款Java程序员必备的开发工具 – 码农网
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服