引言
这篇文章为转载的,写得不错,让人看了之后很想学gradle。
转自:http://dreamhead.blogbus.com/tag/gradle/
时至今日,如果你的Java项目依然需要启动一个特定的工具,比如IDE,才能编译部署,那你的项目不在本文的讨论之中,因为实在落后得太让人无语了。
好,回归正题。旧时代的Java世界,构建工具等同于两个词Ant和Maven。
Ant源自Make,同JUnit一样,它也是一个航班产物(参见《Ant权威指南》序)。不过,Make的基础注定了它的起点不高,所有一切都要手工打造。我还依稀记得曾几何时,每每开始一个项目都要重新复制一份Ant脚本,修修改改。Maven给了人们新的希望,目录结构的约定、依赖管理、IDE集成,那时看来,几近完美。是的,几近,还差了那么一点点。就是那么一点点,却是致命伤。
只要一个项目进行一段时间,一个必然遇到的问题就是,编写新的自动化脚本。因为每个项目都有自己的特定需求,标准做法必然是无法满足的。扩展Maven对任何新手都是一件头疼的事,我们要学会编写插件,要搞清楚生命周期,这时,突然会唤起一丝丝对于ANT的怀念,虽然它做简单事不容易,但做复杂事却也没这么困难。
如果那些日子,我们不得不忍受Ant和Maven的不完美,那现在,是时候抛弃它们了。新时代Java构建有两个很好的候选:Gradle和Buildr。在我看来,它们真正比Maven更强大的地方,编写自己的任务更加容易。更值得兴奋的一点是,我们终于可以抛弃冗长的XML,选择一种更优雅的程序设计语言来写代码了,这几乎意味着你可以做到想做的一切。
Buildr是Apache出品的构建工具,它以Ruby作为构建脚本。
Gradle现在是整个Java社区的构建新宠,它采用Groovy作为自己的构建语言。如果你知道,Groovy是一门诞生自JVM平台的语言,这就决定了它要比其它移植到JVM上的语言能更好的适应JVM平台,它可以采用更符合Java世界的方式无缝地整合Java既有的程序库,而不必像移植语言那样削足适履。
初涉Gradle,最让人吃惊的一点莫过于它详尽的文档,涵盖了Gradle使用的方方面面,这是许多开源软件项目无法媲美,即便早在它的1.0版本尚未发布之时。当然,能做到这一点是因为它背后有一个公司在支撑:GradleWare,这意味着如果你需要商业支持,也是可以的。
Gradle 1.0尚未发布之,它就捧回2010年的Spring大奖和入围了2011年的JAX大奖。如果你还需要更多的信心,作为Java开发人员,你不可能不知道Spring,那Spring转投Gradle怀抱,应该是对Gradle最有利的支持了。
说了这么多,程序员最喜欢看到的东西还是代码。首先,请自行下载安装Gradle,然后,按照常见的Java项目布局把代码准备好(感谢Maven为我们给予我们约定),比如:
src/main/java,源代码文件目录
src/main/resources,资源文件目录
src/test/java,测试代码目录
下面是一个简单的Gradle构建脚本,将其存放于build.gradle
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
compile(
'com.google.guava:guava:13.0.1',
'joda-time:joda-time:2.1'
)
testCompile(
'junit:junit:4.10',
'org.mockito:mockito-all:1.9.0'
)
}
(build.gradle)
接下来的事情就很简单了,在命令行里键入
gradle build
如果一切正常,我们应该会看到构建成功的字样,然后,到build/lib,你就看到自己构建出来的JAR文件了。当然,这只是一个简单得不能再简单的例子,如果需要了解更多,Gradle那详尽的文档便是最好的去处。
分享到:
相关推荐
总的来说,Gradle 7.2是一个重大且全面的更新,它在性能、功能和易用性方面都取得了显著进步,是开发者构建Java和Android应用的得力工具。通过使用这个压缩包中的"gradle-7.2"文件,用户可以快速搭建本地Gradle环境...
3. **Maven**: Maven是另一种流行的Java项目管理和构建工具,它使用XML文件(pom.xml)来定义项目配置和依赖关系。Maven有一套标准的目录结构和生命周期,使得项目构建标准化。然而,对于大型复杂项目,Maven的灵活...
7. **Java支持**:Gradle作为Java项目的主要构建工具,会随着Java版本的更新保持兼容性。Gradle 8.0可能会支持当时最新的Java版本,提供对新语言特性的支持。 8. **并行构建**:Gradle允许并行执行任务,以充分利用...
总结来说,`gradle-5.4.1-all.zip`是Android开发中必不可少的离线构建工具,其包含了构建Android应用所需的所有组件。正确配置和使用离线Gradle包,能确保在任何网络条件下都能高效地进行开发工作。同时,了解和掌握...
Gradle 是一个强大的构建自动化工具,广泛应用于Java、Android和其他多语言项目中。Gradle-7.5.1-all.zip 是Gradle的特定版本(7.5.1)的离线包,它包含了运行和构建项目所需的所有组件,这对于那些没有稳定网络连接...
Gradle是一款强大的构建工具,广泛应用于Java、Android和其他支持的语言项目。标题中的"gradle-6.3-bin.zip"指的是Gradle的6.3版本的二进制发行版压缩包。这个版本发布于2020年,为开发者提供了许多新特性和改进,...
在解压`gradle-4.5-all.zip`后,`iblue-gradle-4.5`可能是一个相关的项目或者工具,它可能是使用Gradle 4.5构建的,或者是为特定环境或目的定制的Gradle 4.5版本。 总的来说,Gradle 4.5是一个重要的版本,它在性能...
总之,Gradle 4.1是一个功能强大、性能优秀的构建工具,它的出现使得开发者能够更加高效地管理项目依赖和构建流程,特别是对于Android开发者,提供了强大的支持。通过下载并使用这个gradle-4.1-all.zip压缩包,可以...
Gradle 是一个强大的构建自动化工具,广泛应用于Java、Android和其他多语言项目中。在Android Studio 3.0中,Gradle被用作默认的构建系统,对于开发Android应用至关重要。`gradle-4.1-all`这个压缩包包含了Gradle ...
综上所述,`gradle-5.6.zip` 包含的是Gradle 5.6版本的所有组件,适用于Java和Android开发,提供了一整套自动化构建解决方案。通过解压并配置这个包,开发者可以利用其强大的功能和性能优化来管理和构建自己的项目。...
**Gradle 4.1 知识点详解** Gradle 是一个强大的、灵活的构建系统,广泛应用于Java、Android和其他多种软件开发项目中。它的核心设计理念是为了解决Apache Ant和Apache Maven在构建过程中的局限性,特别是针对大型...
Gradle 是一个强大的构建自动化工具,广泛用于Java、Android和其他多语言项目。它采用Groovy或Kotlin等脚本语言,提供了高度灵活的构建配置,支持模块化、依赖管理和插件系统,使得开发者能够定制化的管理项目的构建...
Gradle是一款强大的构建工具,广泛应用于Java、Android和其他多种编程语言的项目中。在本案例中,我们关注的是"gradle-5.2-all.zip",这是一个包含Gradle 5.2版本的所有组件的压缩包,适用于离线安装。同时,文件...
Gradle 是一个强大的构建自动化工具,广泛用于Java、Android和其他多语言项目。Gradle 的核心特性包括灵活性、可扩展性和高性能,使得它成为现代软件开发不可或缺的一部分。Gradle-6.0-all.zip 是一个包含Gradle 6.0...
在解压的`gradle-6.8.2`文件夹中,你可以找到Gradle的二进制分布,包含运行时所需的JAR文件、脚本和文档。通常,这个文件夹会被配置为Gradle的本地安装目录,然后通过环境变量或`gradle-wrapper.properties`文件指向...
Gradle 是一个强大的构建自动化工具,广泛用于Java、Android和其他多语言项目。Gradle-6.5-all压缩包包含了Gradle 6.5版本的所有组件,使得开发者无需从官方源下载,可以快速地在本地环境中配置和使用。这个版本可能...
Gradle 是一个强大的构建自动化工具,广泛用于Java、Android和其他多语言项目。Gradle_5.6.4-all 是 Gradle 的一个特定版本,包含了所有必要的组件和库,使得开发者能够在本地环境中快速设置和运行Gradle构建。这个...
标签“gradle”和“gradle-6.4-all”进一步明确了这个资源与Gradle构建工具以及其特定版本6.4的关联。这些标签有助于搜索和分类,使开发者能够快速找到他们需要的Gradle版本。 在压缩包内的文件名列表中,我们可以...
Gradle是一款强大的构建自动化工具,尤其在Java、Android开发领域广泛应用。Gradle 4.6 版本的发布,带来了许多重要更新和改进,旨在提高...下载"gradle-4.6-all.zip"压缩包后,解压即可开始使用这一强大的构建工具。