简介

学习

黑马程序员精品教程 | Java 进阶教程之 Gradle 入门到精通

下载

https://gradle.org/releases/

下载 binary-only

安装

参考https://gradle.org/install/#manually

Mac

  1. 解压

  2. 配置环境变量

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    vi ~/.bash_profile

    #添加
    export GRADLE_HOME=/Users/mac126/study/devsoft/gradle-6.5.1
    export GRADLE_USER_HOME=$GRADLE_HOME

    export PATH=$PATH:$GRADLE_HOME/bin

    #配置生效
    source ~/.bash_profile
  3. 验证

    1
    gradle -v
  4. 升级

    1
    2
    gradle wrapper --gradle-version=6.5.1 --distribution-type=bin
    gradle tasks

Windows

  1. 解压

  2. 配置环境变量

    1
    在 Path 中添加 C:\Gradle\gradle-6.5.1\bin
  3. 验证

    1
    gradle -v
  4. 升级

    1
    2
    gradle.bat wrapper --gradle-version=6.5.1 --distribution-type=bin
    gradle.bat tasks

IDEA 配置

  • 欢迎界面: Configure-Preferences
  • 已打开工程界面:File-Other Settings-Preferences for New Projects...
image-20200701092612060 image-20200703093216825

上面配置后,下面 Gradle user home 会自动更新

配置阿里云镜像

下载依赖资源包比较慢,通过配置阿里云仓库来加速资源下载

单个项目

修改根目录下build.gradle

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
buildscript {
repositories {
maven { url 'https://maven.aliyun.com/repository/public/' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/apache-snapshots' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/spring' }
maven { url 'https://maven.aliyun.com/repository/spring-plugin' }
maven { url 'https://maven.aliyun.com/repository/releases' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
}

allprojects {
repositories {
maven { url 'https://maven.aliyun.com/repository/public/' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/apache-snapshots' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/spring' }
maven { url 'https://maven.aliyun.com/repository/spring-plugin' }
maven { url 'https://maven.aliyun.com/repository/releases' }
}
}

所有项目

${USER_HOME}/.gradle/ 下创建 init.gradle 文件

Windows

1
C:\Users\Administrator\.gradle\init.gradle

MacOS

1
/Users/wangwz/.gradle/init.gradle

请求到 central 和 jcenter 仓库替换为阿里云 public 仓库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
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') || url.startsWith('http://repo1.maven.org/maven2')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
remove repo
}
if (url.startsWith('https://jcenter.bintray.com/') || url.startsWith('http://jcenter.bintray.com/')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."
remove repo
}
}
}
maven {
allowInsecureProtocol = false
url ALIYUN_REPOSITORY_URL
url ALIYUN_JCENTER_URL
}
}


buildscript{
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') || url.startsWith('http://repo1.maven.org/maven2')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
remove repo
}
if (url.startsWith('https://jcenter.bintray.com/') || url.startsWith('http://jcenter.bintray.com/')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."
remove repo
}
}
}
maven {
allowInsecureProtocol = false
url ALIYUN_REPOSITORY_URL
url ALIYUN_JCENTER_URL
}
}
}
}

安装依赖

1
2
3
gradle dependencies 或 ./gradlew dependencies 

gradle –refresh-dependencies

清空 gradle build 缓存

  • Windows

    1
    gradlew build --refresh-dependencies
  • Mac

    1
    ./gradlew build --refresh-dependencies

gradle 下载的依赖包位置

Mac

1
2
3
4
/Users/(用户名)/.gradle/caches/modules-2/files-2.1

~/.gradle/caches/modules-2/files-2.1
打开 Finder,Shift+command+G 这 3 个组合键后,输入以上路径

Windows

1
2
C:\Users\(用户名)\.gradle\caches\modules-2\files-2.1
或者在 android studio 中切换到 project 下,右键 -> Library Properties....

修改 Gradle 缓存文件夹路径(Gradle 下载的文件 /jar 包)

增加一个环境变量 GRADLE_USER_HOME,指定为想要存放的地方

img