独自登高楼 望断天涯路

学lucene 学hadoop,Google/baidu搜:“独自登高楼”,进入本博客

Gradle学习(三)——Gradle Wrapper

转载请注明出处:http://blog.csdn.net/lastsweetop/article/details/78861595

用Wrapper进行构建

如果你的Gradle项目设置了Wrapper,那么你就需要在root项目中运行以下命令中的一个去执行构建:

  • ./gradlew <task> (Linux或者macOS)
  • gradlew <task> (Windos)

每个Wrapper都绑定了一个版本的Gradle,当你执行第一次执行命令的时候,它就会去下载对应版本的Gradle,然后进行构建。

当你在IDE通过Wrapper导入gradle工程时,IDE会询问你是否导入Gradle的all版本,这会在你编写gradle文件时帮你自动完成代码,并且可以查看内部实现。

这不仅仅意味着你不需要手动下载,而且你可以明确你项目构建的Gradle版本,这使得你的历史构建非常可靠。Wrapper命令行的语法和手动安装的gradle完全一致。

注意,你不能删除Wrapper在项目中自动导入的文件,导入的文件包括如下:

  • gradlew (linux或macOS脚本文件)
  • gradlew.bat (windows脚本文件)
  • gradle/wrapper/gradle-wrapper.jar (wrapper的jar包)
  • gradle/wrapper/gradle-wrapper.properties (wrapper的属性配置文件)

下载的各种版本的gradle都放在了gradle/wrapper/gradle-wrapper.properties目录下

为项目添加wrapper

如果你将wrapper提交到了版本控制服务器,那么下载你代码的任何人就可以完全不需要安装gradle了,而且能保证在当前版本的Gradle下构建是可以正常运转的。当然对于持续集成服务器来说也是非常好的,因为不需要在服务器上做配置。

你可以通过wrapper任务将Wrapper安装到你的项目中,--gradle-version选项可以指定gradle的版本。默认下载的是gradle的最小包-bin包,但是Android Studio和Intellij Idea都会提示你是否安装all包,all包在IDE中可以有更多的提示信息,还可以查看源码。如果命令行下,你可以使用--distribution-type选项来指定bin包还是all包,你还可以通过--gradle-distribution-url直接指定gradle的下载地址。如果版本和URL都没指定,那么wrapper的gradle版本就和你执行gradle命令的版本一致。

gradle wrapper --distribution-type=all命令的输出如下:

BUILD SUCCESSFUL in 2s
1 actionable task: 1 executed

你还可以在build.gradle文件中重新配置wrapper任务,示例如下:

task wrapper(type: Wrapper) {
    gradleVersion '4.0'
    distributionType 'all'
}

在wrapper任务执行后,会在项目目录下生成或者更新一些文件:

.
├── gradle
│   └── wrapper
│       ├── gradle-wrapper.jar
│       └── gradle-wrapper.properties
├── gradlew
└── gradlew.bat

所有这写文件都应该没提交到版本控制服务器,这些文件添加之后,就应该用gradlew构建项目了,用法了gradle一样。

如果你想改变wrapper对应gradle的版本,你并不需要再次执行wrapper任务,你只需更改一下gradle-wrapper.properties文件即可,但如果在wrapper任务中有其他的操作,那么你就需要重新执行wrapper任务了。

配置

但你使用gradlew运行gradle时,他会首先检查wrapper对应的gradle是否可用,如果可用,他会将gradlew的所有参数委托给gradle,然后执行构建,如果gradle包不可用,它就会首先下载对应版本的gradle,然后再构建。

如果你不想在gradlew命令执行时下载,你可以自己下载gradle包,然后修改gradle-wrapper.properties文件,将url指向到你手动下载到本地的地址,wrapper是支持相对路径的。

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lastsweetop/article/details/78861595
文章标签: gradle
个人分类: gradle
所属专栏: Gradle学习
想对作者说点什么? 我来说一句

gradle-4.1-all

2017年10月30日 85.9MB 下载

没有更多推荐了,返回首页

不良信息举报

Gradle学习(三)——Gradle Wrapper

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭