Gradle安装与配置
一、Gradle安装
1、Gradle安装
(1)先安装JDK/JRE
(2)Gradle下载官网 Gradle官网
(3)解压安装包到想安装到的目录。如D:\java\gradle-5.2.1
(4)配置环境变量。
变量名:GRADLE_HOME
变量值:解压到的目录

(5)添加到path
变量名:Path
变量值:%GRADLE_HOME%\bin;

2、Gradle配置
(1)配置本地仓库
变量名:GRADLE_USER_HOME
变量值:自定义Gradle仓库目录或者Maven的仓库目录

(2)配置仓库源
在Gradle安装目录下的 init.d 文件夹下,新建一个 init.gradle 文件,里面填写以下配置。
allprojects {
repositories {
maven { url 'file:///C:/Java/maven_repository'}
mavenLocal()
maven { name "Alibaba" ; url "https://maven.aliyun.com/repository/public" }
maven { name "Bstek" ; url "http://nexus.bsdn.org/content/groups/public/" }
mavenCentral()
}
buildscript {
repositories {
maven { name "Alibaba" ; url 'https://maven.aliyun.com/repository/public' }
maven { name "Bstek" ; url 'http://nexus.bsdn.org/content/groups/public/' }
maven { name "M2" ; url 'https://plugins.gradle.org/m2/' }
}
}
}
repositories中写的是获取jar包的顺序。先是本地的Maven仓库路径;接着的mavenLocal()是获取Maven本地仓库的路径,应该是和第一条一样,但是不冲突;第三条和第四条是从国内和国外的网络上仓库获取;最后的 mavenCentral() 是从Apache提供的中央仓库获取jar包。
(3)配置到IDEA
在IDEA的Setting里打开"Build, Execution, Deployment"-"Build Tools"-"Gradle"。
勾选 Use local Gradle distribution,在 Gradle home中选择安装的Gradle的路径。
如果在变量和配置文件中设置了Gradle的仓库路径,在Service directory path中就会自动填写地址,如果想改的话可以手动修改。

二、Gradle仓库配置
1、本地仓库配置
配置环境变量GRADLE_USER_HOME,并指向你的一个本地目录,用来保存Gradle下载的依赖包。

2、远程仓库配置
一般Gradle、maven从中央仓库mavenCentral()(http://repo1.maven.org/maven2/)下载依赖包,但是在国内下载速度巨慢,我们只能使用国内的镜像。
所以每个Gradle构建的项目中,我们可以在build.gradle做如下配置
repositories {
maven {
url 'http://maven.aliyun.com/nexus/content/groups/public/'
}
mavenCentral()
}
3、全局仓库配置
每个项目都单独配置难免麻烦些,我们可以配置一个全局配置文件。gradle加载全局配置按优先级顺序有如下四种方式:
(1)通过--I 或者--init-script参数在构建开始时指定路径,如
gradle --init-script init.gradle clean
gradle --I init.gradle clean
init.gradle文件示例:
allprojects{
repositories {
def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public'
def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter'
all { ArtifactRepository repo ->
if(repo instanceof MavenArtifactRepository){
def url = repo.url.toString()
if (url.startsWith('https://repo1.maven.org/maven2')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
remove repo
}
if (url.startsWith('https://jcenter.bintray.com/')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."
remove repo
}
}
}
maven {
url ALIYUN_REPOSITORY_URL
url ALIYUN_JCENTER_URL
}
}
}
(2)加载USER_HOME/.gradle/init.gradle文件
(3)加载USER_HOME/.gradle/init.d/目录下的以.gradle结尾的文件
(4)加载GRADLE_HOME/init.d/目录下的以.gradle结尾的文件
三、Gradle仓库配置详解
支持的类型有如下几种:
| 类型 | 说明 |
|---|---|
| Maven central repository | 这是Maven的中央仓库,无需配置,直接声明就可以使用。但不支持https协议访问 |
| Maven JCenter repository | JCenter中央仓库,实际也是是用的maven搭建的,但相比Maven仓库更友好,通过CDN分发,并且支持https访问。 |
| Maven local repository | Maven本地的仓库,可以通过本地配置文件进行配置 |
| Maven repository | 常规的第三方Maven仓库,可设置访问Url |
| Ivy repository | Ivy仓库,可以是本地仓库,也可以是远程仓库 |
| Flat directory repository | 使用本地文件夹作为仓库 |
1、Maven central repository
在build.gradle中配置:
repositories {
mavenCentral()
}
就可以直接使用了。
2、Maven JCenter repository
最常用也是Android Studio默认配置:
repositories {
jcenter()
}
这时使用jcenter仓库是通过https访问的,如果想切换成http协议访问,需要修改配置:
repositories {
jcenter {
url "http://jcenter.bintray.com"
}
}
3、Local Maven repository
可以使用Maven本地的仓库。默认情况下,本地仓库位于USER_HOME/.m2/repository(例如windows环境中,在C:\Users\NAME.m2.repository),同时可以通过USER_HOME/.m2/下的settings.xml配置文件修改默认路径位置。
若使用本地仓库在build.gradle中进行如下配置:
repositories {
mavenLocal()
}
4、Maven repositories
第三方的配置也很简单,直接指明url即可:
repositories {
maven {
url "http://repo.mycompany.com/maven2"
}
}
5、ivy repositories
配置如下:
repositories {
ivy {
url "http://repo.mycompany.com/repo"
}
}
6、Flat directory repository
使用本地文件夹,这个也比较常用。直接在build.gradle中声明文件夹路径:
repositories {
flatDir {
dirs 'lib'
}
flatDir {
dirs 'lib1', 'lib2'
}
}
使用本地文件夹时,就不支持配置元数据格式的信息了(POM文件)。并且Gradle会优先使用服务器仓库中的库文件:例如同时声明了jcenter和flatDir,当flatDir中的库文件同样在jcenter中存在,gradle会优先使用jcenter的。
7、常用仓库
repositories {
mavenCentral()
maven { url "https://jitpack.io" }
maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
https://plugins.gradle.org/m2/
maven { url 'http://maven.oschina.net/content/groups/public/' }
maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
maven { url "http://maven.springframework.org/release" }
maven { url "http://maven.restlet.org" }
maven { url "http://mirrors.ibiblio.org/maven2" }
maven {
url "http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/"
}
maven { url 'https://maven.fabric.io/public' }
jcenter()
google()
}
四、Gradle Wrapper使用
对于所有Gradle项目来说,都推荐使用Gradle Wrapper,甚至应该将其当做创建代码库之后的第一件事来做。使用Gradle Wrapper有以下好处:
(1)不用安装Gradle也能运行Gradle
(2)所有人使用相同版本的Gradle
在build.gradle中加入以下配置:
task wrapper(type: Wrapper) {
gradleVersion = '4.6'
}
然后再运行gradle wrapper,此时会生成gradlew、gradle.bat两个文件和gradle目录。这里的gradlew和gradle.bat是脚本文件,在使用gradle命令的地方替换为gradlew或gradle.bat,它们将自动下载指定版本的gradle,然后使用该版本进行项目构建。
请注意,这3个文件是要提交到代码库上的,当项目其他人拿到代码之后,由于gradlew和gradle.bat均在源代码中,他们本地即使没有安装gradle,也能通过./gradlew build命令进行项目构建。
参考[1]Gradle的安装与配置
[2]Gradle学习(一)gradle本地、远程仓库配置
[3]Gradle仓库配置
[4]一篇文章讲清楚Gradle与Gradle Wrapper的区别
Gradle安装与配置的更多相关文章
- 兔子--gradle安装和配置
1.下载gradle,下载--all的这个 点击进入下载页 2.下载下来后,解压.配置环境变量. 编辑path , ....;G:\soft\gradle-2.2.1-all\gradle-2.2.1 ...
- Gradle的简介、安装与配置
Gradle介绍 Gradle是一个基于JVM的构建工具,它提供了: 像Ant一样,通用灵活的构建工具,对Ant的任务做了很好的集成 同Maven一样是基于约定的构建框架 强大的多工程构建支持.有广泛 ...
- [ubuntu]android SDK 与Gradle环境的安装与配置|搭建android基础开发/构建环境
系统环境: linux:ubuntu18 已配置jdk 环境变量 切换到root账户 sudo su 安装Android-sdk (0)准备工作 切换到/usr/local目录: /usr/local ...
- Gradle的环境安装与配置
本文是基于Windows环境对Gradle-6.6版本进行的安装配置. 简介 下载 安装 环境变量配置 开发工具配置 1.简介 Gradle是一个基于JVM的构建工具,是一款通用灵活的构建工具,支持m ...
- Android studio下gradle Robolectric单元测试配置
android studio下gradle Robolectric单元测试配置 1.Robolectric Robolectric是一个基于junit之上的单元测试框架.它并不依赖于Android提供 ...
- Gradle安装
最近在学Android,而Android是由Gradle来构建的:Gradle是一个基于 JVM 的构建工具.所以开始学习Android之前,先进行Gradle安装与学习: mac: 使用SDKMAN ...
- Android Studio 的安装和配置篇(Windows篇)
上一篇介绍完了Android Studio,这一篇就专门来讲讲怎么安装配置的吧. 其实好多人都卡到安装配置这一步,想当初我也是,万恶的XX防火墙,导致下载Android Studio 的gradle异 ...
- 构建工具Gradle安装和简单使用
1. 安装 到gradle官网下载页 https://gradle.org/gradle-download/ 下载gradle,其中“完全版(Complete distribution)”包含除了运行 ...
- 【转】Android studio安装与配置
Android studio安装与配置 1.首先下载Android studio安装包,可以从http://www.android-studio.org/下载最新版本,这里采用3.0版本进行演示,对应 ...
随机推荐
- hdu 5056 Boring count (类似单调队列的做法。。)
给一个由小写字母构成的字符串S,问有多少个子串满足:在这个子串中每个字母的个数都不超过K. 数据范围: 1<=T<= 1001 <= the length of S <= 10 ...
- 第36篇-return字节码指令
方法返回的字节码相关指令如下表所示. 0xac ireturn 从当前方法返回int 0xad lreturn 从当前方法返回long 0xae freturn 从当前方法返回float 0xaf d ...
- idea使用git更新代码 : update project(git merge、git rebase)
idea使用git更新代码 : 选中想要更新的项目,右键点击 git => repository => pull 这样使用一次后idea会自动建立选中分支的远程跟踪分支,以后可直接点击下图 ...
- Invalid prop: type check failed for prop "xxx". Expected Number, got String.
在子组件progress-circle.vue的template中的定义如下: <svg :width="radius" :height="radius" ...
- Java学习(十九)
先学了字体分类 大概是这种效果: 一般把这些大类放在font-family的最后使用,防止字体呈现的效果不够好. 今天把final关键字学完了 也要几点要注意,我觉得比较重要的就是public sta ...
- JSON实现序列化dump和dumps方法,JSON实现反序列化loads和load方法
通过文件操作,我们可以将字符串写入到一个本地文件.但是,如果是一个对象(例如列表.字典.元组等),就无 法直接写入到一个文件里,需要对这个对象进行序列化,然后才能写入到文件里. 设计一套协议,按照某种 ...
- python 字符串和时间格式(datetime)相互转换-
2019-03-17 11:00:00格式转化 import datetime # str转时间格式: dd = '2019-03-17 11:00:00' dd = datetime.datetim ...
- 用idea生成javadoc在线文档
1.点击需要生成文档的包 2.点击tools--->选择generate javaDoc /1选择输出目录 /2防止中文乱码建议加上: -encoding utf-8 -charset utf- ...
- [Bzoj 1192][HNOI2006]鬼谷子的钱袋(二进制优化多重背包)
(人生第一篇bzoj题解有点激动 首先介绍一下题目: 看它题目那么长,其实意思就是给定一个数a,求将其拆分成n个数,通过这n个数可以表示出1~a中所有数的方案中,求最小的n. 您看懂了嘛?不懂咱来举个 ...
- 洛谷 P5518 - [MtOI2019]幽灵乐团 / 莫比乌斯反演基础练习题(莫比乌斯反演+整除分块)
洛谷题面传送门 一道究极恶心的毒瘤六合一题,式子推了我满满两面 A4 纸-- 首先我们可以将式子拆成: \[ans=\prod\limits_{i=1}^A\prod\limits_{j=1}^B\p ...