1. build.gradle 是什么? 想象一下,你有一个大型的乐高项目,你需要一个清单来列出所有的乐高积木和它们如何组合在一起。在软件开发中,build.gradle 就是这个清单,它告诉计算机如何构建(组合)你的软件项目。
  2. 为什么每个项目都有一个 build.gradle 文件? 每个项目都像是一个独立的乐高套装,每个套装都有自己的清单来确保所有的积木(代码和资源)都能正确地组合在一起。这个清单就是 build.gradle 文件。
  3. build.gradle 文件里有什么? 在这个清单中,你会指定你的项目需要哪些积木(依赖库),这些积木的版本是什么,以及一些特殊的构建规则(比如如何编译代码)。
  4. 什么是 Project 实例? 可以把 Project 实例想象成一个项目经理,它负责管理你的乐高项目。build.gradle 文件中的配置实际上是在告诉这个项目经理如何管理项目。
  5. Root Project 和 Child Project 是什么? 如果你有一个大型的乐高项目,它可能由几个小项目组成。Root Project 就像是总负责人,它可以管理所有的小项目(Child Project)。在 Root Project 的 build.gradle 文件中,你可以为所有这些小项目设置一些共同的规则,比如它们都需要哪些通用的积木或者如何找到这些积木。

build 文件中常见的属性和方法如下所示:

Gradle 进阶学习 之 build.gradle 文件_Java

Gradle的build 文件中常见的属性和方法

1、常见属性代码

1.1 JDK版本兼容性设置

sourceCompatibility: 指定使用哪个版本的JDK语法来编译源代码。这与编译环境有关,且需要Java插件支持。

sourceCompatibility= 1.8
  • 1.

targetCompatibility: 指定生成特定于某个JDK版本的class文件。这与运行环境有关,同样需要Java插件支持。

targetCompatibility= 1.8
  • 1.
1.2. 字符集设置

编译Java选项字符集: 设置业务编码的字符集,用于源码解码。

compileJava.options.encoding "UTF-8"
  • 1.

编译测试Java选项字符集: 设置测试编码的字符集,同样用于源码解码。

compileTestJava.options.encoding "UTF-8"
  • 1.

Java编译任务字符集: 在编译Java文件时指定使用UTF-8字符集,这影响源文件的编码。

tasks.withType(JavaCompile) {
          
          
    options.encoding = "UTF-8"
}
  • 1.
  • 2.
  • 3.

Javadoc任务符集: 在生成Javadoc文档时指定使用UTF-8字符集,这影响文档的编码。