首页 > 自考资讯 > 高考百科

看到你还在用Maven,Gradle难道不香吗?,gradle与maven

小条 2024-10-22

Maven是每个使用JAVA开发或测试开发的朋友都知道的一个非常经典且易于使用的JAVA项目构建工具。

然而,一向标新立异的老司机却觉得梅宾不满意!

首先,Maven的配置文件是XML的。如果您的项目依赖太多包,则XML 文件可能会变长。

其次,XML 并不是那么灵活。如果经验丰富的驱动程序需要在构建过程中添加自定义逻辑,则可能会变得非常乏味。

想象一下。 Android程序员必须能够适应多种Android智能手机场景并理解自定义逻辑。

if(isMoto){做某事}

else if(isHuawei){做某事}

.

第三,Maven不能很好地支持较新版本的Java,因此即使编译Java11,也需要更新内置的Maven插件。

对于Maven 作为构建工具是否有很多抱怨?接下来,尝试全新的Java 构建工具Gradle。

ffc92df2f49543c09b4a77fbef194b52~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1730158163&x-signature=frT2bfsblLGp3jOzofVvex9IOac%3D 已经是2020年了。相信很多JAVA开发和测试开发伙伴已经开始使用Intelij IDEA来创建JAVA程序了。 IDEA 默认支持Gradle Wrapper。这意味着您不需要单独安装Gradle。

9aaa42f0453c4a9b8ad0db4328ee2c29~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1730158163&x-signature=Aj6lKNNDuorrOOWlKz3WdNxze60%3D 老司机因为很久没用了,感觉Gradle有很多优点。这里有两个。

01.Gradle 很快

Gradle 使用构建缓存、守护进程等来提高编译速度。因此,gradle的编译速度比Maven快很多,平均编译速度比Maven快几倍,而且项目越大,这种差异就越明显。

6c2d4d3ad599413a918ed284617a08f6~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1730158163&x-signature=JzRYPe8M4V6W11LcnOeWtRYqhzs%3D 对于较大的列,直方图的编译时间较长。

02.Gradle 很灵活

Maven使用XML,所以打包其实比较麻烦。许多Maven 项目需要执行外部脚本来完成需要灵活性的任务。相比之下,Gradle 的配置文件是用Groovy 编程语言编写的构建脚本,不需要外部脚本。

没有必要害怕像groovy这样的新语言。这非常简单,与数百行XML 或外部脚本相比,通常需要创建很少的内容。经验丰富的用户认为这是一站式服务。不错。

伙计们说话时不练习假动作。只是练习而不谈论愚蠢的动作。

让我们看两个例子来说明Gradle 如何优于Maven 和Ant。

1. 对软件包的依赖,Gradle VS Maven,例如junit

典型的Maven 配置文件如下所示:

项目xmlns=”http://maven.apache.org/POM/4.0.0” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0 http://maven.apache.org /xsd/maven-4.0.0.xsd”

模型版本4.0.0/模型版本

groupIdcom.mycompany.app/groupId

artifactIdmy-app/artifactId

包装罐/包装

版本1.0-快照/版本

依赖关系

依赖

groupIdjunit/组ID

工件Idjunit/artifactId

版本3.8.1/版本

范围测试/范围

/依赖

/依赖项

/项目

Gradle的流程如下。

应用plugin:“java”

组=“com.mycompany.app”

archivesBaseName=“我的应用程序”

版本=“1.0-快照”

存储库{

mavenCentral()

}

依赖项{

测试编译“junit:junit:3.8.1”

}

第一轮:凹印获胜!

2. 任务管理,Gradle VS Ant,例如hello world

Gradle 与Ant 一样,使用任务作为执行的原子单元。

蚂蚁怎么写:

?xml 版本=”1.0”?

项目名称=“foo”

目标名称=”你好”

回声你好世界/回声

/目标

/项目

如何编写Gradle:

你好任务{

println“你好世界”

}

第二轮:凹印获胜!

经过两轮比较,我们将360度全方位向您展示Gradle的优势。老司机们还想补充一下:

XML 本质上适合描述属性,但不适合表达状态,例如if.else.switch.case.这种事情显然不是XML 的专长,但它应该是。当面对多种环境时,你所面对的是什么。

Gradle使用Groovy编程语言可以轻松处理多条件问题。

一位在软件行业工作N年的老司机讲述了自己的一段经历:

1.谷歌是软件研发和测试开发行业的领导者。

2. Google内部使用的那些很快就在Google外部广泛使用,有些甚至成为行业默认标准。

Google推荐Gradle,你呢?

总之,——Gradle很好吃!

版权声明:本文转载于网络,版权归作者所有。如有侵权,请联系本站编辑删除。

猜你喜欢