Gradle-build项目结构

时间:2014-08-05 10:54:21

标签: gradle gradlew

我看到很多Gradle构建的Java / Groovy项目的例子,它们具有以下结构:

some-app/
    src/
        main/
        test/
    docs/
    README.md
    build.gradle
    gradlew
    gradlew.bat
    settings.gradle
    gradle.properties
    gradle/
        *.gradle

我了解 build.gradle 是主要的构建脚本,而 gradle.properties 是其属性文件。但 settings.gradle 真的让我失望。在里面我看到了:

rootProject.name = "someApp"

但这似乎属于gradle.properties。我还想知道gradlewgradlew.bat文件来自何处,它们似乎已生成。

最后,我想知道为什么gradle/目录下有这么多 *。gradle 文件:是这些插件还是某种扩展脚本。它们都是从主build.gradle中拉出来的,如下所示:

apply "gradle/fizz.gradle"
apply "gradle/buzz.gradle"
etc.

所以:

  1. settings.gradle 应该在gradle.properties进入哪些属性?
  2. 如何生成gradlew / gradlew.bat个文件?
  3. 为什么有人会有这么多不同的*.gradle文件?为什么不只是一个大的build.gradle buildscript?

1 个答案:

答案 0 :(得分:1)

1)gradle.properties是普通属性文件,而settings.gradle也是构建脚本。您可以添加一些将在构建期间执行的代码。通常,当您拥有多模块项目时,需要此文件。

2)当您在项目构建目录中键入gradle tasks时(空build.gradle足以看到它)您将看到wrapper任务。此任务用于生成您要询问的脚本。更多info

3)原因是所有这些文件都有不同的职责,干净利落地分开。