使用gradle进行构建打包操作

由于我们部署的jenkins执行的Android构建操作就是由Gradle来实现,所以以下是我们在使用gradle在执行构建操作时,gradle的构建原理

一.Gradle的安装和配置

1.  我们要从Gradle的官网,去下载gradle,值得高兴的是,另外目前最新的gradle版本是2.1,下载完之后解压到你指定的文件夹中(我的在D:\Software)

2. 打开环境变量(别告诉我你找不到),新建一个系统变量:变量名GRADLE_HOME,变量值D:\Software\gradle-1.12(gradle所在目录)

3. 在系统变量PATH路径中配置,目的是在DOS命令行中任何的目录下都可以访问到gradle

SouthEast

经过上面的3个步骤,我们已经配置好gradle了,打开DOS命令行(快捷键window+r -->cmd)输入:gradle,看到下图所示即安装成功

SouthEast

二.Gradle的task

task是gralde所能执行的最小单位,相当于Java中一个函数,task是需要用脚本语言groovy来写的,不多说,按照惯例先来一个Hello World。

1, 在任意目录下(我的目录:D:\Software\gradle-1.12\gradletest\hellogradle)新建文件build.gradle,将下面的代码粘贴上去.

view plain copy

  1. task hello {  
  2.     doLast {  
  3.         println ‘Hello World’  
  4.     }  
  5. }  

2. 进入此目录,输入:gradle hello
SouthEast


我们可以看到在上图中打印出了Hello World,一般在项目中,是不需要我们来写task的(是不是很兴奋?),这样又会带来一个新的问题,怎么找到Android自带的那些写好的task呢?

如果你想查看android中已经写好的task,我们只需要在build.gradle文件中定义如下代码


 view plain copy
  1. buildscript {  
  2.     repositories {  
  3.         mavenCentral()  
  4.     }  
  5.     dependencies {  
  6.         classpath ‘com.android.tools.build:gradle:0.12.2’  
  7.     }  
  8. }  
  9. apply plugin: ‘com.android.application’   

然后我们就可以在改目录下查看android提供的task了,打开命令行切到指定目录,输入:gradle tasks
SouthEast


列出各类task供我们使用,比如构建时用到的task,我们在android studio中运行项目的时候也可以看到这些task的。

三.利用Gradle编译安卓项目并打包成apk文件

1. 创建一个gradle能够识别的android项目目录结构,可以鼠标右键新建,也可以通过如下命令去创建


view plain  copy
  1. mkdir src\main\java\com  
  2. echo > src\main\AndroidManifest.xml  

2. 打开AndroidMainfest.xml,将一下内容复制进去

view plain copy

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     package="com" />  

3.以上2步就完成了一个简单项目的配置,下面我们需要配置build.gradle文件

 view plain copy

  1. buildscript {  
  2.     repositories {  
  3.         mavenCentral()  
  4.     }  
  5.     dependencies {  
  6.         classpath 'com.android.tools.build:gradle:0.12.2'  
  7.     }  
  8. }  
  9. apply plugin: 'com.android.application'  
  10. android {  
  11.     compileSdkVersion 19  
  12.     buildToolsVersion "20.0.0"  
  13.   
  14.     defaultConfig {  
  15.         applicationId "com"  
  16.         minSdkVersion 16  
  17.         targetSdkVersion 19  
  18.         versionCode 1   
  19.         versionName "1.0"  
  20.     }  
  21. }  

4.在build.gradle文件所在目录输入:gradle assembleDebug 命令,就可以在build\outputs\apk目录下可以找到生成的apk文件


SouthEast

SouthEast


四.gradle wrapper的使用


gradle wrapper意为gradle包装器,用于封装gradle的下载与安装代码。要使用wrapper,只需要在项目的根目录下(也就是build.gradle所在的目录)调用gradle wrapper,就能生成以下四个文件。

view plain copy

  1. gradle\wrapper\gradle-wrapper.jar  
  2. gradle\wrapper\gradle-wrapper.properties  
  3. gradlew  
  4. gradlew.bat  

对于电脑里没有安装gradle的用户,可以直接通过执行gradlew,来调用gradle对应的task。比如安卓打包的命令可以变成gradlew assembleDebug,其实在执行gradlew命令时,gradle-wrapper.jar会自动下载安装gradle,安装目录在gradle-wrapper.properties里配置。然后使用安装后的gradle来执行指定的task。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值