欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

gradle使用心得

程序员文章站 2022-07-09 21:08:09
...

gradle环境搭建前先使用java -version检测Java环境;如果输出java -version不是内部命令即先搭建Java环境

如果输出下图即继续;

gradle使用心得


下载解压 进入环境配置:

一、新建GRADLE_HOME的环境变量;路径指向Gradle根目录

二、将%GRADLE_HOME%\bin配置到PATH中

三、cmd输入gradle -v 配置成功

本地仓库修改

gradle依赖的第三方jar包默认在用户本地库目录(缓存目录)在系统盘上,为了提高系统性能;我们将Gradle的本地仓库修改到指定的盘符预计文件夹。

首先博主以D盘为例;使用cmd命令切换到D盘下的Programma目录下;使用md .gradle创建一个.gradle文件夹;

如图所示

gradle使用心得

方法一,修改gradle启动脚本,进入gradle安装的bin目录,使用文本编辑器打开gradle.bat文件,在如图的位置添加以下语句

set GRADLE_OPTS="-Dgradle.user.home=D:\Programme\.gradle"

gradle使用心得

方法二 使用Windows环境变量设置gradle用户目录,通过环境变量的方式,gradle会读取环境变量,所有的项目都会自动修改过来,非常方便。

进入环境变量设置后,新建一个GRADLE_USER_HOME,值为D:\Programme\.gradle,设置完成之后,点击确定,关闭设置窗口。这个时候可以去idea中看下gradle的用户目录,自动变成了环境变量中的值了

gradle使用心得


远程仓库配置

一般Gradle、maven从*仓库mavenCentral() http://repo1.maven.org/maven2/下载依赖包,但是在国内下载速度巨慢,我们只能使用国内的镜像。
所以每个Gradle构建的项目中,我们可以在build.gradle做如下配置

repositories {
    maven {
        url 'http://maven.aliyun.com/nexus/content/groups/public/'
    }
    mavenCentral()
}

每个项目都如此配置难免麻烦些,我们可以配置一个全局配置文件。

.gradle\init.gradle

allprojects{
    repositories {
        def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
        all { ArtifactRepository repo ->
            if(repo instanceof MavenArtifactRepository){
                def url = repo.url.toString()
                if (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."
                    remove repo
                }
            }
        }
        maven {
            url REPOSITORY_URL
        }
    }
}

gradle使用心得

init.gradle简介

init.gradle文件在build开始之前执行,所以你可以在这个文件配置一些你想预先加载的操作
例如配置build日志输出、配置你的机器信息,比如jdk安装目录,配置在build时必须个人信息,比如仓库或者数据库的认证信息,and so on.

启用init.gradle文件的方法:
1、在命令行指定文件,例如:gradle –init-script yourdir/init.gradle -q taskName.你可以多次输入此命令来指定多个init文件
2、把init.gradle文件放到USER_HOME/.gradle/ 目录下.
3、把以.gradle结尾的文件放到USER_HOME/.gradle/init.d/ 目录下.
4、把以.gradle结尾的文件放到GRADLE_HOME/init.d/ 目录下.

如果存在上面的4种方式的2种以上,gradle会按上面的1-4序号依次执行这些文件,如果给定目录下存在多个init脚本,会按拼音a-z顺序执行这些脚本
类似于build.gradle脚本,init脚本有时groovy语言脚本。每个init脚本都存在一个对应的gradle实例,你在这个文件中调用的所有方法和属性,都会
委托给这个gradle实例,每个init脚本都实现了Script接口

下面的例子是在build执行之前给所有的项目制定maven本地库,这个例子同时在 build.gradle文件指定了maven的仓库中心,注意它们之间异同

build.gradle

repositories {
    mavenCentral()
}

task showRepos << {
    println "All repos:"
    println repositories.collect { it.name }
}

init.gradle

allprojects {
    repositories {
        mavenLocal()
    }
}

在命令行输入命令:gradle –init-script init.gradle -q showRepos

> gradle --init-script init.gradle -q showRepos
All repos:
[MavenLocal, MavenRepo]