说Gradle
说Gradle
刚开始认识Gradle这个名词是在蘑菇街的一场 交流会上,当时只是一个概念;第二面,是试图下载编译spring源码的时候;第三面,就是我司较真的安卓主程,有一天兴高彩烈的跟我说,我终于做好多渠道自动打包啦(我们很弱,不要笑话:)
据我现在的知识理解,gradle是特别适合安卓项目使用的,原因就在于gradle的特长之一就是多版本构建,恰恰切合了安卓项目的多渠道打包(一次打多个包),Maven只能是切换不同的Profile,一次打一个包。
gradle另外一大优点就是可以多工程打包,像spring,可以将项目切分成不同的工程,一次打出来一组分开的jar包。(20160317补充:这里必须补充,maven也可以实现多工程的管理,只需要在maven工程上创建modules即可,后续会写博文补充实现方法)
最后,就是gradle所使用的groovy语言,在灵活性,和简洁性上基于xml的ant和maven是无法比拟的。
eclipse中如何使用gradle
我是比较懒的人,命令行这东西一直不在行(Linux的操作除外),比如Git一直没有用命令行去操作过,一直用的是eclipse的git插件可视化操作。
在开始摸索gradle的时候,第一个想要找的就是eclipse的集成插件。这个插件新出,在中文网站也很少能够找到他的安装、使用说明。这里可能是你见到的第一个中文教程,它就是buildship。一个gradle公司为eclipse用户开发的集成插件(intelJ、NetBeans、STS中在2015年就已经有了)2015年7月发布的第一个版本。
buildship的github位置
安装gradle
1.安装JDK,这个就不用说了
2.下载gradle发布文件,下载地址:http://gradle.org/gradle-download/可以下载完整版或者简洁版都可以。
3.解压下载的zip文件,放到C盘(建议放到c盘)
4.添加环境变量GRADLE_HOME,添加值为C:\gradle-2.9-bin\gradle-2.9;
5.PATH环境变量中添加%GRADLE_HOME%/bin;
6.命令行中输入gradle -v,查看是否配置正确,正确会输出gradle的版本信息;
安装buildship插件
针对所有eclipse版本,官方都提供了安装方式,具体可见:https://github.com/eclipse/buildship/blob/master/docs/user/Installation.md
下面把简单步骤,中文描述一下:
1.eclipse中依次打开“Help”–》“Eclipse Marketplace”,在搜索栏中输入“buildship”进行搜索;
2.点击install,等待安装完成,按照提示重启eclipse即可。
3.安装成功后,可以在Window–>Show View–>Others…中和File–>New–> Other…中看到增加的Gradle选项。
后记
到这里,使用buildship需要安装的东西已经安装完了,下一节会介绍如何使用buildship去创建你的工程。
说Gradle的更多相关文章
- Gradle配置APK自动签名完整流程
转载请注明出处:http://www.cnblogs.com/LT5505/p/6256683.html 一.生成签名 1.命令行生成签名,输入命令keytool -genkey -v -keysto ...
- gradle学习笔记(1)
1. 安装 (1) 下载最新gradle压缩包,解压到某处.地址是:Gradle web site: (2) 添加环境变量: 1) 变量名:GRADLE_HOM ...
- Gradle 实现 Android 多渠道定制化打包
Gradle 实现 Android 多渠道定制化打包 版权声明:本文为博主原创文章,未经博主允许不得转载. 最近在项目中遇到需要实现 Apk 多渠道.定制化打包, Google .百度查找了一些资料, ...
- 解决 Could not find com.android.tools.build:gradle 问题
今天拉同事最新的代码,编译时老是报如下错误: Error:Could not find com.android.tools.build:gradle:2.2.0.Searched in the fol ...
- React Native Android gradle下载慢问题解决
很多人会遇到 初次运行 react-native run android的时候 gradle下载极慢,甚至会失败的问题 如下图 实际上这个问题好解决的 首先 把对应版本的gradle下载到本地任意一个 ...
- Android studio使用gradle动态构建APP(不同的包,不同的icon、label)
最近有个需求,需要做两个功能相似的APP,大部分代码是一样的,只是界面不一样,以前要维护两套代码,比较麻烦,最近在网上找资料,发现可以用gradle使用同一套代码构建两个APP.下面介绍使用方法: 首 ...
- 对Maven、gradle、svn、spring 3.0 fragment、git的想法
1.Maven Maven可以构建项目,采用pom方式配置主项目和其他需要引用的项目.同时可结合spring3.0的新特性web fragment. 从现实出发,特别是对于管理不到位,程序员整体素质 ...
- 项目自动化建构工具gradle 入门1——输出helloWorld
先来一个简单的例子,4个步骤: 1.进入D:\work\gradle\java 目录 ,您电脑没这目录? 那辛苦自己一级一级建立起来吧 新建文件build.gradle,文件内容是: apply p ...
- 用IntelliJ IDEA创建Gradle项目简单入门
Gradle和Maven一样,是Java用得最多的构建工具之一,在Maven之前,解决jar包引用的问题真是令人抓狂,有了Maven后日子就好过起来了,而现在又有了Gradle,Maven有的功能它都 ...
- 通过Gradle为APK瘦身
引言:在过去几年中,APK 文件的大小曾急剧增长态势.一般来说,其原因如下:Android开发者获取了更多的依赖库,添加了更多的密度,Apps 增加了更多的功能.但实际上我们应该让APKs 尽可能的小 ...
随机推荐
- Java中Object.hashCode contract
面试时在这个问题上犯了个错误,只重写了equals方法,而没有覆盖hashCode()方法. 回来重读了Effective Java的Item 9,里面提到Object.hashCode contra ...
- 网页弹出框ClientScript,ScriptManager
网页调用客户端弹出框 this.ClientScript.RegisterStartupScript(this.GetType(), "message", "<sc ...
- Go并发原理
Go语言是为并发而生的语言,Go语言是为数不多的在语言层面实现并发的语言:也正是Go语言的并发特性,吸引了全球无数的开发者. 并发(concurrency)和并行(parallellism) 并发(c ...
- Hbase表重命名 表改名
PS:现在我有个表 :test11_new ,我要给他改名 开始: 1.先disable掉表hbase(main):023:0> disable 'test11_new' 0 row(s) i ...
- ZF 语法
Zend Framework Command Line Console Tool v1.11.11 Details for action "" and provider " ...
- JAVA面向接口的编程思想与具体实现
面向对象设计里有一点大家已基本形成共识,就是面向接口编程,我想大多数人对这个是没有什么觉得需要怀疑的. 问题是在实际的项目开发中我们是怎么体现的呢? 难道就是每一个实现都提供一个接口就了 ...
- 项目一:第十二天 1、常见权限控制方式 2、基于shiro提供url拦截方式验证权限 3、在realm中授权 5、总结验证权限方式(四种) 6、用户注销7、基于treegrid实现菜单展示
1 课程计划 1. 常见权限控制方式 2. 基于shiro提供url拦截方式验证权限 3. 在realm中授权 4. 基于shiro提供注解方式验证权限 5. 总结验证权限方式(四种) 6. 用户注销 ...
- Python 网络爬虫 002 (入门) 爬取一个网站之前,要了解的知识
网站站点的背景调研 1. 检查 robots.txt 网站都会定义robots.txt 文件,这个文件就是给 网络爬虫 来了解爬取该网站时存在哪些限制.当然了,这个限制仅仅只是一个建议,你可以遵守,也 ...
- Be a Smart Raftsman SGU475
传送门 题目大意 有m+1个点,0是起点,m是终点,i-1到i有一条边,有一个船由0驶往m,不能返回,它在载重小于等于ci时通过第i条边消耗的时间为di否则为Di,现在有n个人,每个人体重为wi,上船 ...
- Luogu 1081 [NOIP2012] 开车旅行
感谢$LOJ$的数据让我调掉此题. 这道题的难点真的是预处理啊…… 首先我们预处理出小$A$和小$B$在每一个城市的时候会走向哪一个城市$ga_i$和$gb_i$,我们有链表和平衡树可以解决这个问题( ...