androidstudio教程 如何集成 groovy

您所在的位置: &
1.2.3 在Android上使用Gradle构建系统
1.2.3 在Android上使用Gradle构建系统
丁志虎/武海峰 译
人民邮电出版社
《Android编程实战》第1章完善开发环境,本章首先会介绍Android SDK的一些高级特性,如何在日常开发中使用它们,以及它们是如何帮助开发者编写高质量的应用程序的。接下来会介绍如何用第三方库来组织项目以达到最大的代码复用。本节为大家介绍在Android上使用Gradle构建系统。
1.2.3 在Android上使用Gradle构建系统
随着Android Studio的发布,谷歌也推出了全新的模块化构建系统,以替代旧版本SDK中的Ant脚本。在Android Studio中创建新项目同时会创建所有的Gradle脚本。
Gradle是像Ivy和Maven一样的模块化构建系统。它结合了Ant的灵活以及Maven中的依赖管理。Gradle使用Groovy领域专用语言,开发者可以更清楚地描述配置项,不用再写复杂的XML构建脚本。
下面的代码是为新项目创建的默认build.gradel文件。第一个区块告诉gradle使用哪个仓库下载构建所用的插件以及依赖(这个依赖不同于后面即将介绍的项目依赖)。接下来的部分告诉gradle应用哪种插件,本例中使用的是Android插件,基于此即可开展后面的Android开发。再下面是项目的依赖,本例只使用了位于libs目录里的支持包。最后的区块以android开头,定义了项目的配置项。
buildscript&{ &&&&&repositories&{ &&&&&&&&&maven&{&url&'http://repo1.maven.org/maven2'&} &&&&&} &&&&&dependencies&{ &&&&&&&&&classpath&'com.android.tools.build:gradle:0.5+' &&&&&} &} &apply&plugin:&'android' &&dependencies&{ &&&&&compile&files('libs/android-support-v4.jar') &} &&android&{ &&&&&compileSdkVersion&18 &&&&&buildToolsVersion&&18.0.0& &&&&&&defaultConfig&{ &&&&&&&&&minSdkVersion&18 &&&&&&&&&targetSdkVersion&18 &&&&&} &}&&
可在查看新的Gradle构建系统用户手册。
应用了新构建系统的Android项目的默认目录结构跟开发者之前熟悉的有点不同,不再使用扁平结构,而是有两个集合:源代码和测试代码。它们在如下的目录中:
src/main/ &&src/instrumentTest/&
Java源代码位于main/java目录,资源文件位于main/res目录。AndroidManifest.xml直接位于main目录(如图1-1所示)。
其他项目目录有assets(二进制资源)、aidl(Android IDL文件)、rs(RenderScript源文件)以及jni(本地C/C++代码)。
虽然可以直接在Android Studio IDE中构建运行项目,也可通过命令行与构建系统交互。Gradle定义了一系列任务。在项目根目录下输入如下命令即可列出所有可用的任务。
$&./gradlew&tasks&
比如,如果从头开始构建应用程序,只需运行下面的命令。
$&./gradlew&clean&build&
该命令首先执行clean任务,接下来执行build任务。
从现有项目迁移到Gradle
由于大部分现有Android项目并没有使用Gradle构建系统,所以需要一个迁移向导。最简单的迁移方法是使用Android Studio创建新的Android项目,然后把原项目复制到新项目的子文件夹内。
接下来把Android Studio创建的build.gradle文件复制到已迁移项目的根目录下。
android&{ &&&&&sourceSets&{ &&&&&&&&&main&{ &&&&&&&&&&&&&manifest.srcFile&'AndroidManifest.xml' &&&&&&&&&&&&&java.srcDirs&=&['src'] &&&&&&&&&&&&&resources.srcDirs&=&['src'] &&&&&&&&&&&&&aidl.srcDirs&=&['src'] &&&&&&&&&&&&&renderscript.srcDirs&=&['src'] &&&&&&&&&&&&&res.srcDirs&=&['res'] &&&&&&&&&&&&&assets.srcDirs&=&['assets'] &&&&&&&&&} &&&&&} &}&
像上面的例子一样编辑android部分,这应该对所有沿用老标准目录结构的Android项目都有效。如果你的项目结构有所不同,只需在前面的示例中改变路径即可。(注意:所有的路径都是相对的。)
喜欢的朋友可以添加我们的微信账号:
51CTO读书频道二维码
51CTO读书频道活动讨论群:【责任编辑: TEL:(010)】&&&&&&
关于&&的更多文章
你是否从事Android操作系统开发,会创建简单的Android应用,但想
本书描述了黑客用默默无闻的行动为数字世界照亮了一条道路的故事。
讲师: 7人学习过讲师: 25人学习过讲师: 6人学习过
WebGL 是一项在网页上渲染三维图形的技术,也是HTML5
这是一本PPT经典,5年销售近20万册,它为无数读者开启
《RESTful Web APIs中文版》是针对RESTful API的实用
J2EE是目前企业级软件开发的首选平台。本书从架构的角度讲解了一个完整的J2EE系统的搭建。内容包括:正则表达式、JSP、Swing、XM
51CTO旗下网站Google I/O 2013发布了新的开发工具Android Studio和新的构建系统, Android Studio自不必说,这是Android
IDE的未来。这篇文章就来学习下Gradle。
什么是Gradle?
Gradle 是以 Groovy 语言为基础,面向Java应用为主,基于DSL语法的自动化构建工具。说到Java的自动化构建工具,大家一定对Ant和Maven都不会陌生,对,Gradle就是这样一种类似的工具,不过它比Ant和Maven强大的多,而且使用起来更加方便简单并且兼容Maven。
下面列举了一些使用Gradle构建Android项目的好处:
在IDE环境和命令行下使用同一个构建系统
改进的依赖关系管理
更容易地集成到自动化构建系统
安装Gradle
如果你是用Android Studio,第一次运行的时候需要自动安装Gradle,这个过程很漫长,而且有可能需要翻墙才下载的了,所以很多用户以致于认为死机了,所以最好的办法是手动来安装吧。
由于自己是mac电脑,所以以下仅以OSX系统为例,Windows系统的请自行网上搜索安装过程。
首先去官网下载最新版本,目前最新版本是1.11,如下图直接下载并解压gradle-1.11-all.zip放到一个目录下(当然你可以选择直接下载bin),之后建立软连接:
cd /usr/bin
ln -s /Users/storm/gradle/bin/gradle gradle
#-& /Users/storm/gradle/bin/gradle是我放gradle的目录
之后在命令行下输入gradle -v,如果显示了版本的信息则安装成功了。
------------------------------------------------------------
Gradle 1.11
------------------------------------------------------------
Build time:
2014-02-11 11:34:39 UTC
Build number: none
a831fa866d46cbee94e61a09af15f9dd
Apache Ant(TM) version 1.9.2 compiled on July 8 2013
1.6.0_65 (Apple Inc. 20.65-b04-462)
Mac OS X 10.9.1 x86_64
Gradle 基本概念
如果你用Android Studio新建一个项目的时候,默认生成一大堆关于gradle的东西,其中最重要的是一个build.gradle的文件,内容如下:
buildscript {
repositories {
mavenCentral()
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
apply plugin: 'android'
compileSdkVersion 19
buildToolsVersion &19.0.0&
defaultConfig {
minSdkVersion 14
targetSdkVersion 19
versionCode 1
versionName &1.0&
buildTypes {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
dependencies {
compile 'com.android.support:support-v4:19.0.+'
buildscript节点的内容完全不用动,大概意思就是支持maven,声明Gradle的版本,刚开始很纳闷0.8是什么意思,Gradle的版本不是1.11么,我搜了好久都不知道这个数字和版本有什么关系,后来在上有一项release
note,才大概知道是如何对应起来的。
apply plugin节点声明构建的项目类型,这里当然是android了
android节点设置编译android项目的参数,接下来,我们的构建android项目的所有配置都在这里完成。相信上述都能看懂,就简单的字面意思。
构建一个Gradle Android项目
上述算是一个最基本的Android Gradle配置文件了,但是如果项目中引用了一些第三方的jar包,则需要添加些东西,比如项目依赖了一个sunpport_v4的jar包,则完整的build.gradle文件如下:
buildscript {
repositories {
mavenCentral()
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
apply plugin: 'android'
compileSdkVersion 19
buildToolsVersion &19.0.0&
defaultConfig {
minSdkVersion 14
targetSdkVersion 19
versionCode 1
versionName &1.0&
buildTypes {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
dependencies {
//单文件依赖
compile files('libs/android-support-v4.jar&)
//某个文件夹下面全部依赖
compile fileTree(dir: 'libs', include: '*.jar')
接着在命令行cd 到项目目录下
gradle clean
如果是第一次使用gradle构建,则会下载相关依赖包并且对环境进行初始化,如果出错了,一般可能是下载超时,试多几次即可,最后你会看到如下提示:BUILD SUCCESSFUL 完成以上的步骤,就可以正式使用gralde 构建你的android项目了。
gradle build
就完成了android 项目的构建了。如果,你是照着以上步骤走的话,你将会在项目目录里面看到一个build 的目录,里面就是用gradle 构建android项目的全部东西了。最终打包的apk 就在build/apk 目录下了。然后,你会发现,两个apk 一个是 [项目名]-debug-unaligned [项目名]-release-unsigned,看名字就猜到一个是调试模式没有进行优化的apk(可直接安装),一个是release模式但没有签名的apk(不可直接安装)。
默认输出 release apk 是没有签名的,那么我们需要签名的很简单,只需要在android{}里面补充加上如下代码即可。
signingConfigs {
myConfig {
storeFile file(&storm.keystore&)
storePassword &storm&
keyAlias &storm&
keyPassword &storm&
buildTypes{
signingConfig
signingConfigs.myConfig
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
然后,运行
gradle clean
gradle build
接着在build/apk目录下就生成了我们需要的签名的apk。
实际项目中我们的app可以会很复杂,比如不仅引用到一些jar文件,也可能会引用一些Android Library项目以及一些.so文件,而且实际发布的时候我们可能不仅需要发布到一个平台上,目前Android大大小小可能得十几个平台,所以用Gradle就无法解决这些问题呢,答案是否定的,Gradle通过一些其他的配置都可以解决,只是稍微要麻烦些,等待以后有时间有精力的时候再总结下。顺便说下Gradle是Google大力支持的,所以和Android
Studio类似,都是Android的未来,作为Android开发者有必要学习并跟上时代的步伐。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场Android Studio和IntelliJ IDEA的不同点在什么地方_百度知道
Android Studio和IntelliJ IDEA的不同点在什么地方
提问者采纳
Scale,IDEA是JetBrains公司推出的Java集成开发环境。下面是个官方截图,而如果你不是那就选择idea吧,并不支持诸如Groovy,具体可查看官网上的差异说明,可以到IntelliJ IDEA 查看。(在Studio转正之前idea应该是做Android开发的一个不错的选择:  而Android Studio是基于IDEA Commutity Edition开发的,再加上经过Google两年的开发studio已经进入了1,因为Community 版本不仅是免费的而且是开源的,而不是最新的idea14,请看下图。  下面说一下利弊,分为免费社区版与收费旗舰版,但google已把它们剔除了.0正式版是基于idea13开发的.  上面这些大概说清了这三者之间的差异了,所以如果你做Android开发选studio就对了:  虽然Android Studio是基于IDEA开发的,但studio是一个纯粹的Android开发环境,貌似属于弊的范畴吧(可我觉得这是优点,据我所知这两个版本的差异主要在对JavaEE开发的支持上,所以可能Studio支持的开发更少,Android Studio就只做Android)。  再者,虽然IDEA 社区版也原生支持Android开发,社区版貌似只支持JavaSE.0的正式版时代,但对于Android开发的支持上定不如Studio来的彻底。  最后总结一句,Android,这是最佳选择  首先是差异,收费版还支持JavaEE的开发,scale虽然IDEA社区版支持,如果你是Android开发者就选择studio吧:  可以看出之前刚推出的studio1,但现在不是了),Groovy
资深电脑人
其他类似问题
为您推荐:
android的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Kiran is a product developer working in medical domain. He worked on creating scalable java batch applications and is currently working on developing cross platform mobile applications. His current interests include automated testing of mobile applications.
Do you want to know how to develop your skillset to become a Java Rockstar?Subscribe to our newsletter to start Rocking right now!To get you started we give you our best selling eBooks for FREE!1. JPA Mini Book2. JVM Troubleshooting Guide3. JUnit Tutorial for Unit Testing4. Java Annotations Tutorial5. Java Interview Questions6. Spring Interview Questions7. Android UI Designand many more ....& Email address:
Java Code Geeks and all content copyright (C) ,
Want to take your Java Skills to the next level?Grab our programming books for FREE!Save time by leveraging our field-tested solutions to common problems.The books cover a wide range of topics, from JPA and JUnit, to JMeter and Android.Each book comes as a standalone guide (with source code provided), so that you use it as reference. Last Step ...Where should we send the free eBooks? Good Work!To download the books, please verify your email address by following the instructions found on the email we just sent you.Android Studio开发Groovy - CSDN博客
主要讲下Android Studio如何开发Groovy,搭环境这东西,最恶心。我查了N多的外文。。。。
1.AS(Android Studio)本身是支持Groovy的,Gradle用的语法就是Groovy。也可以在AS中直接创建.groovy后缀的文件。
2.Project、Module的build.gradle可以将目录的展现形式改为Android来识别:
执行的groovy文件会提示没有配置(configure)groovy
解决方法:
1.在Project层的build.gradle中加入:
buildscript {
repositories {
dependencies {
classpath 'com.android.tools.build:gradle:1.1.0'
classpath 'org.codehaus.groovy:gradle-groovy-android-plugin:0.3.6'
// NOTE: Do not place your applicati they belong
// in the individual module build.gradle files
也就是在原有基础上加
classpath 'org.codehaus.groovy:gradle-groovy-android-plugin:0.3.6'
2.在Module层的build.gradle中加入
apply plugin: 'groovyx.grooid.groovy-android'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.+'
compile 'org.codehaus.groovy:groovy:2.4.0:grooid'
也就是加个plugin和在dependencies加个compile
3.要使用最新的Android Studio1.2Beta3
因为我之前用的是老的,导致无法运行。
这个不是必须的,但是在安装groovy的依赖和AS升级时,可能会影响到。没办法天朝技术、管理都不如人。用个VPN就行了,主要百度搜到的第一个的VPN基本都是假冒的,域名都被山寨的抢注了。
源码在我的github上地址是:/AlbertSnow/MyGroovyProject.git
文件是app\src\androidTest\java\com\example\starlight\myapplication\groovyTest.groovy}

我要回帖

更多关于 androidstudio安装 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信