第2章 The Gradle Wrapper
来源:互联网 发布:ios项目源码下载 编辑:程序博客网 时间:2024/05/29 05:08
2.1. 工程中添加Wrapper
有时你可能需要将Wrapper提交至项目版本控制中。通过发布带有Wrapper的工程,其他人员不需要安装gradle也可以执行gradle命令。
使用Wrapper的另外一个好处是可以随时调整gradle的执行版本,这对于持续集成项目是有必要的。
可以执行wrapper
任务将Wrapper安装到项目中。通过--gradle-verison
参数指定需要集成的gradle版本。默认情况下Wrapper需要使用bin
发行版,它是gradle最小的发行版本。可以使用--distribution-type
指定使用的发行版本。同--gradle-distribution-url
参数指定gradle的下载URL。如果为指定gradle版本或URL,Wrapper会安装wrapper
任务运行环境的gradle的版本。例如如果wrapper
运行在gradle2.4环境下,Wrapper会配置成2.4版本。
示例 2.1 运行wrapper任务
gradle wrapper --gradle-version 4.2.1
运行结果:
>gradle wrapper --gradle-version 4.2.1BUILD SUCCESSFUL in 2s1 actionable task: 1 executed
Wrapper也可以在build文件中做进一步配置,以添加或修改某些属性,然后再执行wrapper
任务。
示例 2.2 wrapper任务
build.gradle
task wrapper(type: Wrapper) { gradleVersion = '4.2.1'}
通过执行wrapper
任务,你的工程下会新增或修改某些文件。
示例 2.3 wrapper生成的文件
生成的结构树:
simple/ gradlew gradlew.bat gradle/wrapper/ gradle-wrapper.jar gradle-wrapper.properties
所有这些内容需要提交到你的版本控制系统。一旦这些文件添加至你的工程下,工程的构建应该使用gradlew
命令,使用方式与gradle
相同。
如果需要修改gradle的版本,不需要重新执行wrapper
任务,修改gradle-wrapper.properties
文件即可。但是如果想使用gradle wrapper的新功能特性,需要重新生成wrapper相关文件。
2.2. 使用Wrapper执行build
如果Wrapper安装到了你的工程,可以使用下面的方式执行任务:
./gradlew <task>
(Linux 或 macOS 平台)gradlew <task>
(Windows 平台)
Wrapper会自动识别gradle版本、下载gradle,并执行任务。这样不仅意味着你不需要安装gradle就可执行gradle任务,而且会明确你的gradle使用版本。
使用默认的下载地址https://services.gradle.org/distributions/gradle-4.2.1-bin.zip可能无法正常下载,你需要在gradle-wrapper.properties中将想做路径修改成自己的下载地址。
Wrapper下载的gradle发行版会默认保存在你用户路径下:$USER_HOME/.gradle/wrapper/dists
示例 2.4 gradlew命令
Chapter2>gradlew tasks> Task :tasks------------------------------------------------------------All tasks runnable from root project------------------------------------------------------------Build Setup tasks-----------------init - Initializes a new Gradle build.wrapper - Generates Gradle wrapper files.Help tasks----------buildEnvironment - Displays all buildscript dependencies declared in root project 'Chapter2'.components - Displays the components produced by root project 'Chapter2'. [incubating]dependencies - Displays all dependencies declared in root project 'Chapter2'.dependencyInsight - Displays the insight into a specific dependency in root project 'Chapter2'.dependentComponents - Displays the dependent components of components in root project 'Chapter2'. [incubating]help - Displays a help message.model - Displays the configuration model of root project 'Chapter2'. [incubating]projects - Displays the sub-projects of root project 'Chapter2'.properties - Displays the properties of root project 'Chapter2'.tasks - Displays the tasks runnable from root project 'Chapter2'.To see all tasks and more detail, run gradlew tasks --allTo see more detail about a task, run gradlew help --task <task>BUILD SUCCESSFUL in 2s1 actionable task: 1 executed
2.3. 配置信息
Wrapper的配置信息在gradle-wrapper.properties
中。在运行gradlew
命令时,发现本地没有Wrapper,会先自动下载gradle的发行版。如果你不想从网上下在gradle,可以在gradle-wrapper.properties
配置你本地文件路径。
distributionUrl=file:///D:/tools/gradle-4.2.1-bin.zip
示例 2.5 配置本地路径
gradlew test
的运行结果:
Chapter2>gradlew tasksDownloading file:/D:/tools/gradle-4.2.1-bin.zip...........................................Unzipping C:\Users\lenovo\.gradle\wrapper\dists\gradle-4.2.1-bin\pgt46hlh8zt8yzdid3kx4zg3\gradle-4.2.1-bin.zip to C:\User> Task :tasks------------------------------------------------------------All tasks runnable from root project------------------------------------------------------------Build Setup tasks-----------------init - Initializes a new Gradle build.wrapper - Generates Gradle wrapper files.
如果你使用Wrapper构建工程,你本地配置的gradle将不再起作用。
- 第2章 The Gradle Wrapper
- 【Gradle Build Tool 4.1用户指南】Chapter 6.The Gradle Wrapper
- Gradle Wrapper
- Gradle Wrapper
- gradle wrapper
- gradle和gradle wrapper
- Current version is 2.2.1. If using the gradle wrapper
- Error:Gradle version 2.2 is required. Current version is 2.10. If using the gradle wrapper
- Gradle version 2.10 is required. Current version is 2.8. If using the gradle wrapper....
- gradle wrapper的使用
- gradle wrapper分析
- Gradle Wrapper介绍
- Gradle与Wrapper
- Gradle Wrapper简述
- 理解 Gradle Wrapper
- gradle wrapper使用
- Tomcat(8-2) The Wrapper Application
- Tomcat(8-2) The Wrapper Application
- SuperMap大数据GIS 技术白皮书v1.0
- 二进制运算
- 简单有效:解决 Excel 打开 UTF-8 编码 CSV 文件乱码的 BUG
- Spring mvc的原理
- Kubernetes Service配置信息详解
- 第2章 The Gradle Wrapper
- 【学术】如何长时间高效学习
- scala初学之函数定义、流程控制、异常处理入门
- 重回博客林汉三
- 迭代方法替代for循环
- C++中的虚函数(表)实现机制以及用C语言对其进行的模拟实现
- 能提高生产率的Markdown介绍
- C#百度定位API使用
- leetcode 437. Path Sum III 深度优先遍历DFS