Gradle Wrapper
来源:互联网 发布:上海网络教育本科 编辑:程序博客网 时间:2024/05/22 07:40
Why
试想一下,你做好了一个 Gradle 构建的 Web 应用,并且要分享给他人,让他人可以参与到开发中,但对方下载代码后安装了 Gradle 却发现应用未能正常使用。经过多次长时候才发现原来是 Gradle 运行时版本不兼容。怎样解决这个问题呢?
What
Gradle 包装器是 Gradle 的核心特性,能够让机器在没有安装 Gradle 运行时的情况下运行 Grade 构建。它也让构建脚本运行在一个指定的 Gradle 版本上。它是通过中心仓库下载对应版本的 Gradle 运行时来实现的。最终的目标是创造一个独立于系统、系统配置和 Gradle 版本的可靠的、可重复的构建。
How
配置包装器
1、创建一个包装器任务在 build.gradle 中添加以下代码:
task wrapper(type:Wrapper){ gradleVersion='3.4'}
2、执行任务生成包装器文件
www.cdoerknock.com$ gradle wrapperStarting a Gradle Daemon (subsequent builds will be faster)> Configuring > 0/1 projects > root project > Compiling D:\Windows\Desktop\LearnGradle\Gradle包装器\project\build.gradle:wrapperBUILD SUCCESSFULTotal time: 14.749 secs
此时会生成 gradle 文件夹以及 gradlew、gradlew.bat 文件
| //下面是 windows 或者 linux 执行 Gradle 命令的包装器脚本│ gradlew│ gradlew.bat└──gradle └─wrapper //Gradle 包装器微类库,包含下载和解包 Gradle 运行时的逻辑 gradle-wrapper.jar //包装器元信息,包含已下载 Gradle 运行时的存储位置和原始 URL gradle-wrapper.properties
获取到改代码,但是自己本机没有 Gradle 运行时的同事就可以执行对应操作系统的命令来执行,例如 Windows 系统使用 powershell【cmd也可以】:
//Linux 应该使用 .\gradlew appRunPS D:\Windows\Desktop\LearnGradle\Gradle包装器\project> .\gradlew.bat appRun//从远程库下载对应版本的 Gradle Downloading https://services.gradle.org/distributions/gradle-3.4-bin.zip//解压到默认目录 Linux 还会赋权限 Unzipping C:\Users\zylia\.gradle\wrapper\dists\gradle-3.4-bin\aeufj4znodijbvwfbsq3044r0\gradle-3.4-bin.zip to C:\Users\zylia\.gradle\wrapper\dists\gradle-3.4-bin\aeufj4znodijbvwfbsq3044r0:prepareInplaceWebAppFolder:createInplaceWebAppFolder:compileJava:processResources NO-SOURCE:classes:prepareInplaceWebAppClasses:prepareInplaceWebApp:appRun14:50:22 INFO Jetty 9.2.15.v20160210 started and listening on port 909014:50:22 INFO ToDo Application runs at:14:50:22 INFO http://localhost:9090/coderknockPress any key to stop the server.> Building 87% > :appRun
运行时的 Gradle 是通过 Gradle 项目的中心服务器下载并解压(该下载解压过程只会进行一次,之后会重用)到 C:\Users\用户名.gradle\wrapper\dists (Linux是$HOME_DIR/.gradle/warpper/dists)目录下并且赋予相应权限后来进行构建的。这样就可以解决 Why
里提到的问题了。
Further
如果我们无法访问外网,或者不想解压到默认目录,我们可以通过在 build.gradle 脚本中添加一些自定义配置来修改这些内容【修改后需要重新执行gradle wrapper
生成包装器】:
task wrapper(type:Wrapper){ gradleVersion='3.4' //获取 Gradle 安装包的 URL 这里可以通过下面的方式使用本地文件(从中央库下载比较慢,我们可以使用迅雷等工具下载后用这种方式比较快捷) distributionUrl='file:///D:/Windows/Desktop/LearnGradle/Gradle包装器/project/gradle-3.4-bin.zip' //C:\Users\用户名\.gradle linux下是 $HOME_DIR/.gradle 的相对路径 distributionPath='gradle-dists'}
- Gradle Wrapper
- Gradle Wrapper
- gradle wrapper
- gradle和gradle wrapper
- gradle wrapper的使用
- gradle wrapper分析
- Gradle Wrapper介绍
- Gradle与Wrapper
- Gradle Wrapper简述
- 理解 Gradle Wrapper
- gradle wrapper使用
- gradle-wrapper.jar gradle-wrapper.properties 是干什么的
- 离线方式配置gradle wrapper
- 为啥要使用Gradle Wrapper
- Gradle学习笔记 使用Gradle Wrapper
- Gradle学习(三)——Gradle Wrapper
- android studio gradle/wrapper/gradle-wrapper.properties里面更新gradle版本问题
- android studio “Use gradle wrapper” grayed out
- 防止ajax多次提交
- Javascript use strict
- 代码行技术
- linux 创建连接命令 ln -s 软链接
- Android版本更新知识(检测、升级)总结
- Gradle Wrapper
- linux环境下tab 自动补全功能
- 马尔科夫随机场
- Windows 常用快捷键(纯属装逼用)
- 枚举的遍历
- activiti工作流显示流程图且当前节点高亮
- 添加共享库
- session多服务器共享的方案
- 稳态流程模拟软件