简介
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,目前也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置。 面向Java应用为主。当前其支持的语言限于Java、Groovy、Kotlin和Scala,计划未来将支持更多的语言。(摘自百度百科)
安装
sudo apt install gradle gradle –version
下载了一大堆东西,gradle版本4.4.1 。
gradle 目录
在/tmp目录建立test_gradle文件夹,进入其中
gradle init
tree -a (-a参数显示隐藏目录)
gradlew ,gradlew.bat以及wrapper
Gradle Wrapper是为Gradle项目的使用者提供帮助的。项目的原始开发者在他的Gradle项目中设置了Wrapper,那么其他用户在构建时,将可以直接执行以下命令:
./gradlew [task] (UNIX/Linux) gradlew [task] (Windows) 每一个Wrapper都会绑定到一个特定版本的Gradle,当用户第一次执行上面的命令时,Wrapper会自动地下载并安装对应版本的Gradle。
这就带来两个好处:
1.用户不必自己下载、安装、配置Gradle
2.用户进行项目构建时能够确保使用正确的Gradle版本(特别是在构建历史项目时特别明显)
没有这些东西时执行
gradle wrapper
在配置了Wrapper的Gradle项目中,会存在以下的重要文件:
gradlew (Unix) 或者 gradlew.bat (Windows)
gradle/wrapper/gradle-wrapper.jar (Wrapper JAR)
gradle/wrapper/gradler-wrapper.properties (Wrapper properties)
1.对于gradlew和gradlew.bat,它们一个是针对linux的,另一个针对windows,是shell脚本文件。
2.gradle-wrapper.jar 是项目打包必须要有的,不然无法去执行gradlew 。
3.gradler-wrapper.properties中内容大致如下:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4.1-bin.zip distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME
当本地GRADLE_USER_HOME(当前用户目录)中的wrapper/dists没有安装gradle时,将会自动从此地址distributionUrl中下载gradle,之后的执行将不会再次下载安装。下载的Gradle发行版被存放在目录 $USER_HOME/.gradle/wrapper/dists 中。
一个指令可以下载并安装gradle来构建项目是非常方便的,同时可以直接使用gradlew来完成gradle同样的其他功能。
以上文件都应该放入到版本控制系统中。
build.gradle
这是总体配置文件,主要配置软件版本信息,引用库的配置以及编译所需的配置。如果开发安卓APP,在app文件夹里面还会有一个同名文件。
在这个文件当中可以写task,例如build,compile,clean等。当然了,有一些现成的插件可以避免我们造这些轮子。
Gradle是一种声明式的构建工具。在执行时,Gradle并不会一开始便顺序执行build.gradle文件中的内容,而是分为两个阶段,第一个阶段是配置阶段,然后才是实际的执行阶段。
在配置阶段,Gradle将读取所有build.gradle文件的所有内容来配置Project和Task等,比如设置Project和Task的Property,处理Task之间的依赖关系等。
将这个文件直接重命名为build.gradle.kts ,(kts是kotlin脚本后缀)就可以使用kotlin语法写这个配置文件。
settings.gradle
这个文件应用于multi-project的配置,对于简单的项目可以为空甚至删除。
参考
推荐阅读
Gradle官方文档 ```
最后附上GitHub:https://github.com/gonearewe