IDEA安装Gradle

Ant和Maven共享在Java市场上相当大的成功。ANT是在2000年发布了第一个版本的工具,它是基于程序编程思想的发展。 后来,人们在 Apache-Ivy的帮助下,网络接受插件和依赖管理的能力有所提升。但主要缺点是使用XML作为一种格式来写构建脚本。XML是分层的,不利于程序的编程,而且当XML文件变大以后变得难以管理。

Maven在2004年推出的,它比ANT有一个很大的改进。它改变了结构并且继续使用XML编写生成规范。Maven的依赖约定和能够通过网络下载依赖关系。Maven的主要好处是它的生命周期。虽然接连的多个项目生命周期相同,这是以灵活性为代价的。 Maven也面临着依赖管理的一些问题。它不会在同一库版本之间处理好矛盾,复杂的定制构建脚本实际上Maven比ANT更难写。

最后,Gradle于2012年发布,带来了一些更高效的特点。

Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。 面向Java应用为主。当前其支持的语言限于Java、Groovy和Scala,计划未来将支持更多的语言。使用Gradle我们将需要的构建逻辑写入到build.gradle文件中,方便查看和复用。

1、下载

首先我们在百度搜索Gradle,找到官网的下载页面(https://services.gradle.org/distributions/)如下图所示,我们选择想要安装的发布版本,gradle-x.x-bin.zip是需要下载的安装发布版,gradle-x.x-src.zip是源码,gradle-x.x-all.zip则是下载全部的文件。

下载有两种类型,二进制文件和完整版本(包括源码和文档),一般建议下载binary-only,想看文档啥的,可以去官网在线看。


 

 

2、安装

因为使用的是二进制文件,下载完,解压就算安装了,可以直接进入bin目录使用gradle的命令;
但是在实际使用时,为了操作方便,都会配置环境变量,这样在任意路径下,都可以使用命令。

3、配置环境变量

需要修改的是用户级别的配置文件

打开文件 .bash_profile,添加内容

// 进入用户目录
cd ~

// 打开配置
vi .bash_profile

// 在末尾加上以下内容
export GRADLE_HOME=/opt/modules/gradle-5.6.3
export GRADLE_USER_HOME=/opt/modules/maven-repository
export PATH=$PATH:$GRADLE_HOME/bin

// 生效
source .bash_profile

 export GRADLE_USER_HOME=/opt/modules/maven-repository 这一句不是必须的,这个是后边为了和maven仓库共用一个准备的;免得maven项目已经下载的jar包,gradle项目还要重新去下载一份。

gradle -v 有版本信息表示成功:

4、idea中配置gradle 

 

 5、使用国内镜像

在 USER_HOME/.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
        }
    }
}

版权声明:本文为u014028317原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。