Java作为一门世界级主流编程语言,有一款高效易用的项目管理工具是Java开发者共同追求的心愿和目标。 先是2000年Ant,后有2004年Maven两个工具的诞生,都在Java市场上取得了巨大的成功。但是二者都有一定的不足和局限性。
2012年基于Ant和Maven产生的Gradle,弥补了Ant和Maven的不足,带来了一些更高效的特点。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。面向Java应用为主。当前其支持的语言限于Java、Groovy和Scala,计划未来将支持更多的语言。
很简单,下载之后解压,需要把目录配置到环境变量中:配置 GRADLE_HOME,然后在PATH中添加配置:%GRADLE_HOME%\bin,打开命令行:
出现上图即是配置成功
对于IDEA 2019.3 无需集成,只要配置了GRADLE_HOME环境变量,一切都是自动的
先打开上面的命令行,接下来开始学习groovy编程语言
groovy//介绍groovy编程语言 println("hello groovy") println "hello groovy!" //groovy定义变量 def i = 18 println "i = " + i //定义集合类型 def list = ['a', 'b', 'c'] //往list里面添加元素 list << 'd' //取出第三个元素 println "list.get(3) = " + list.get(3) //定义一个map def map = ['name': 'Tim', 'age': 18] //向map中添加 K-V map.sex = '男' println map
点击右上角的箭头即可执行
Groovy的闭包
groovy//介绍groovy的闭包 //闭包的概念:闭包其实就是一段代码块在gradle中把闭包当作参数使用 def b1 = { println ("Hello b1") } //定一个方法,方法里需要闭包类型的参数 def method1(Closure closure){ closure() } //调用方法method1 method1(b1) //输出:Hello b1 //带参数的闭包 def b2 = { v -> println("Hello ${v}") } //定一个方法,方法里需要闭包类型的参数 def method2(Closure closure){ closure("Tim") } method2(b2) //输出:Hello Tim
groovyplugins { id 'java' } /** * 自己填写的一些信息 */ group 'xpu.edu' version '1.0-SNAPSHOT' sourceCompatibility = 1.8 /** * 指定所使用的参数仓库路径 * mavenCentral()表示使用中央仓库,从中央仓库下载到指定目录 */ repositories { //先从本地仓库寻找依赖,如果没有再从中央仓库下载 mavenLocal() mavenCentral() //如果只设置中央仓库,表示直接从中央仓库下载Jar包 } /** * Gradle工程的所有的Jar包的坐标都在dependencies属性内放置的 * 每个Jar包的坐标都有三个基本元素组成 * group、name、version 这和maven是一致的 * testCompile表示该Jar包在测试的时候使用,也就是Jar包的作用域 * 我们在Gradle里面添加坐标的时候都要添加作用域 */ dependencies { compile group: 'com.alibaba', name: 'fastjson', version: '1.2.58' compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.19' testCompile group: 'junit', name: 'junit', version: '4.12' }
如何设置本地仓库呢?
只需要设置GRADLE_USER_HOME 这个环境变量即可,把GREADLE_USER_HOME环境变量设置到自己本地的Maven仓库路径即可!
groovyrepositories { maven { url "http://maven.aliyun.com/nexus/content/groups/public/" } }
这样配置是对当前工程生效,但是新建Gradle工程后又需要在配置一次
所以需要在Gradle的安装目录下的init.d文件夹里新建一个名称为init.gradle的文件,写入如下内容
groovyallprojects { repositories { maven { name "aliyunmaven" url "http://maven.aliyun.com/nexus/content/groups/public/" } } }
本文作者:Tim
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!