我看到很多 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
.我也想知道 gradlew
在哪里和 gradlew.bat
文件来自哪里,它们似乎是生成的。最后,我想知道为什么有这么多 *.gradle
gradle/
下的文件dir:是这些插件,还是某种扩展脚本。他们都是从主build.gradle
拉进来的像这样:apply "gradle/fizz.gradle"
apply "gradle/buzz.gradle"
etc.
所以:
settings.gradle
中应该包含哪些属性不应该进入gradle.properties
? gradlew
怎么样?/gradlew.bat
生成的文件? *.gradle
文件?为什么不只是 1 大 build.gradle
构建脚本? 最佳答案
1) gradle.properties
是普通的属性文件,而 settings.gradle
也是一个构建脚本。您可以在那里添加一些将在构建期间执行的代码。当您有一个多模块项目时,通常需要此文件。
2) 当您输入 gradle tasks
时在项目构建目录中(空的 build.gradle 足以看到它)你会看到 wrapper
任务。此任务用于生成您要询问的脚本。更多 info .
3)原因是所有这些文件都有不同的职责,它们被完全分开。
关于Gradle-构建项目结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25137071/