介绍

Java 作为一门世界级主流编程语言,有一款高效易用的项目管理工具是 java 开发者共同追求的心愿和目标。显示 2000 年的 Ant,后有 2004 年的 Maven 两个工具的诞生,都在 Java 市场上取得了巨大的成功。但是二者都有一定的不足和局限性。

2012 年基于 Ant 和 Maven 产生的 Gradle,弥补了 Ant 和 Maven 的不足,带来了一些更高效的特点。它使用一种基于 Groovy 的特定领域语言(DSL)来声明项目设置,抛弃了基于 XML 的各种繁琐配置。当前其支持的语言限于 Java、Groovy 和 Scala,计划未来将支持更多的语言。

介绍很强大,不过我还是习惯 maven。

准备

下载

点击进入 Gradle 下载地址

环境变量配置

1、解压下载完成的 zip 包:

2、配置环境变量,新建“GRADLE_HOME”变量,值为 zip 包的解压目录,将其 bin 目录绝对路径配置到系统变量 path 中。

3、测试是否配置成功:

C:\Users\Administrator>gradle -v

------------------------------------------------------------
Gradle
------------------------------------------------------------

Build -- :: UTC
Revision:     f2fae6ba563cfb772c8bc35d31e43c59a5b620c3

Kotlin:
Groovy:
Ant:          Apache Ant(TM) version  compiled on July
JVM:          1.8.0_181 (Oracle Corporation 25.181-b13)
OS:           Windows  10.0 amd64

使用

使用Gradle创建工程

1、使用 Idea 新建 Gradle 工程:

2、输入坐标:

3、勾选自动导入,使用本地 Gradle:

4、完成,创建目录了结构如下工程:

配置文件说明

“build.gradle”文件就类似于 Maven 中的“pom.xml”文件的作用,下面是它的说明:

plugins {
    id 'java'
}

group 'zze.gradle'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

// 指定使用的仓库,项目中所需要的 jar 依赖都会默认从中央仓库下载到本地指定目录,默认下载目录为 C:\Users\用户名\.gradle\caches\modules-2\files-2.1
repositories {
    // 表示使用中央仓库
    mavenCentral()
}
/*
gradle 工程所有的 jar 包的坐标都在 dependencies 属性中放置
每一个 jar 包的坐标都有三个基本元素组成 group、name、version
testCompile 为 jar 包的作用域,类似 maven 中的 scope 属性,表示该 jar 包在测试的时候起作用
我们在 gradle 里面添加坐标的时候都要带上 jar 包的作用域
 */
dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
    // 以添加 spring 依赖为例
    compile group: 'org.springframework', name: 'spring-core', version: '5.0.2.RELEASE'
}

配置本地仓库

1、新建名为“GRADLE_USER_HOME”的系统变量,变量值为本地仓库路径

2、重启 IDEA,进入设置,如图“Service directory path”修改为本地仓库路径则配置成功。

3、修改项目配置文件的 repositories 属性:

repositories {
    mavenLocal()
    mavenCentral()
}
// 以上配置表示先从本地仓库寻找依赖,如果没找到,则从中央仓库下载到本地仓库

使用Gradle创建Web工程

1、新建普通 Gradle 工程,在“src/main”下新建“webapp”目录:

2、在“build.gradle”配置文件下添加配置 apply plugin: 'war' ,完成,此时 Idea 就会识别“webapp”目录为 web 资源目录:

java之项目构建工具Gradle的更多相关文章

  1. 项目构建工具Gradle的使用入门(参考,只表明地址)

    Gradle入门介绍:简介 http://blog.jobbole.com/71999/ Gradle入门介绍:第一个Java项目 http://blog.jobbole.com/72558/ Gra ...

  2. 项目构建工具gradle

    1.安装 https://gradle.org/install 2.构建一个项目 https://guides.gradle.org/creating-new-gradle-builds/ 3.bui ...

  3. Java项目工程化之项目构建工具Maven

    欢迎查看Java开发之上帝之眼系列教程,如果您正在为Java后端庞大的体系所困扰,如果您正在为各种繁出不穷的技术和各种框架所迷茫,那么本系列文章将带您窥探Java庞大的体系.本系列教程希望您能站在上帝 ...

  4. 【项目构建工具】 Gradle笔记1

    一.Gradle简介 Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具.它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XM ...

  5. 构建工具Gradle

    1.Summary   从Android团队开始宣布放弃Eclipse转投Android Studio时,构建工具Gradle进入了Android开发者的视野.而随着热修复.插件化.编译时注解的流行, ...

  6. 取代 Maven?这款项目构建工具性能提升 300%

    在 GitHub 上闲逛的时候,发现了一个新的项目:maven-mvnd,持续霸占 GitHub trending 榜单好几天了. maven-mvnd,可以读作 Maven Daemon,译作 Ma ...

  7. 项目构建工具maven的使用方法

    最近在开发javaweb项目中有用到maven,以前并不是很了解,于是学习了一些相关内容,记之共享. 本篇内容在Windows环境下实施,JDK版本使用的1.7.0_79. 一.maven是什么? 简 ...

  8. 项目构建工具ant的使用

    ant是项目构建工具,以xml文件作为构建文件,在这个xml文件(默认是build.xml,当然也可以取其它名字)里我们可以定义多个目标,用我们期待的方式去构建项目,比如说编译,测试,发邮件等等. a ...

  9. 前端项目构建工具---Grunt

    什么是Grunt? grunt是javascript项目构建工具,在grunt流行之前,前端项目的构建打包大多数使用ant.(ant具体使用 可以google),但ant对于前端而言,存在不友好,执行 ...

随机推荐

  1. paste

    echo "step 1" >> steplog.txt    echo "step 1"        sudo apt-get install ...

  2. 【转载】systemctl命令完全指南

    Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器. Systemd是一个系统管理守护进程.工具和库的集合,用于取代System V初始进程.Systemd的功能是 ...

  3. python(61):str 和 bytes 转换

    str 和 bytes 转换 b = b"example" # str object s = "example" # str to bytes bytes(s, ...

  4. ES容易忽视的集群配置

    一 前言 目前生产系统由Solr转ES了,在这边就记录下在使用过程中容易忽视的配置吧,其实我也是才用,如果有什么错误的地方,多指正. 二.配置 1.ES的段合并是限速设置 默认是20MB/s ,如果是 ...

  5. 【iCore1S 双核心板_ARM】例程十八:SD_IAP_FPGA实验——更新升级FPGA

    实验现象及操作说明: 1.烧写程序成功,绿色ARM·LED灯点亮,三色FPGA·LED灯循环点亮,烧写失败,如果挂载SD卡失败,红灯快闪,如果打开文件失败,蓝灯快闪,读取文件指针移动失败,白灯点亮,升 ...

  6. Spark 广播变量BroadCast

    一. 广播变量 广播变量允许程序员将一个只读的变量缓存在每台机器上,而不用在任务之间传递变量.广播变量可被用于有效地给每个节点一个大输入数据集的副本.Spark还尝试使用高效地广播算法来分发变量,进而 ...

  7. Hadoop:hdfs文件permission denied问题解析

    Cron jobs can be scheduled, but fail to write parquet file and seems due to user permission of “yarn ...

  8. The client and server cannot communicate, because they do not possess a common algorithm

    The client and server cannot communicate, because they do not possess a common algorithm This was re ...

  9. Java & PHP & Javascript 通用 RSA 加密 解密 (长字符串)

    系统与系统的数据交互中,有些敏感数据是不能直接明文传输的,所以在发送数据之前要进行加密,在接收到数据时进行解密处理:然而由于系统与系统之间的开发语言不同. 本次需求是生成二维码是通过java生成,由p ...

  10. js多个(N)个数组的的元素组合排序算法,多维数组的排列组合或多个数组之间的排列组合

    现在有一批手机,其中颜色有['白色','黑色','金色','粉红色']:内存大小有['16G','32G','64G','128G'],版本有['移动','联通','电信'],要求写一个算法,实现[[ ...