Gradle依赖于 java语言,并且需要配置一个环境变量
虽然Gradle的下载和安装和maven一样,但是由gradle目录结构可以看到在bin文件夹里面有个gradle.bat文件,双击就可以运行,但是我们不能每次使用都去他的bin目录下去 找.bat文件 双击它,这样很麻烦,所以我们要配置一个环境变量。
1.windows的小伙伴跟配置jdk一样,正常配置就ok了
2.Mac的小伙伴需要新建一个.bash_profile文件,这个文件是Mac上的配置环境变量的隐藏文件 ,为什么是隐藏文件就不说了,懂得都懂【手动滑稽 】,
之后在文件中填写好 环境变量 就好了。
配置好之后我们需要写出命令 ![source ~/.bash_profile](https://img-blog.csdnimg.cn/20200426205605972.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM5MzE0OTcy,size_16,color_FFFFFF,t_70)
这个 命令是加载这个配置文件的,每次想用gradle的时候都执行一遍,加载环境变量,就可以使用了。
Gradle项目目录介绍:
1.src/main/java:放置正式代码目录
2.src/main/resources:放置正式配置文件目录
3.src/test/java:放置单元测试代码目录
4.src/test/resources:放置测试配置文件目录
5.src/main/webapp:放置页面信息/元素,比如:js,css... ...
例:groovy的输出语句
println ("hello World");
//1.groovy可以省略末尾的分号
println ("hello World")
//2.groovy可以省略括号
println "hello World"
//3.groovy定义变量并输出变量,其中def是弱类型的,类似var,groovy会自动根据情况来给变量赋予赋予对应的类型
def i = 18
println i
//4.groovy定义集合类型
def list = ['a','b']
//往list中添加元素c
list << 'c'
//输出list集合中的第三个元素
println list.get(2)
//5.groovy定义Map集合类型
def map = ['key1':'value1','key2':'value2']
//往map中添加元素
map.key3 = 'value3'
//输出map集合中key3的值
println map.get("key3")
了解一下什么是闭包?
了解闭包:
1.闭包是一段代码块
2.在gradle中,主要把闭包当做参数来使用
定义闭包
//定义闭包
def b1 = {
println "helloworrldd"
}
//定义方法 ,方法里面需要闭包参数
def method1(Closure closure){
closure()
}
//调用方法method1
method1(b1)
定义闭包(带参数)
//定义一个闭包,参数
def b2 = {
v->
println "Hello ${v}"
}
def method2(Closure closure){
closure("asd")
}
method2 (b2)
plugins {
id 'java'
}
group 'org.itheima'
version '1.0-SNAPSHOT'
//指定所使用的仓库
//mavenCentral()-->表示使用中央仓库
//此刻项目中所需要的jar包都会默认从中央仓库 下载到本地指定的目录
repositories {
mavenCentral()
}
//gradle工程中所有jar包的坐标都会放在dependencies属性中
//每个jar包都由三个基本元素组成
//group,name,version
//testCompile表示在测试的时候起作用,该属性是jar包的作用域
//我们在gradle里面添加坐标的时候都要带上jar包 的作用域
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
这个配置表示 先从本地仓库寻找依赖,如果没有再去中央仓库下载
repositories {
mavenLocal();
mavenCentral();
}
plugins {
id 'java'
//变成JavaWeb工程,添加下面这行配置即可
id 'war'
}
provided- - -只在编译阶段起作用,运行阶段不起作用
dependencies {
providedCompile group: 'javax.servlet', name: 'javax.servlet-api', version: '3.0.1'
}
图例 :
由图片可知,我们一个大工程里面有很多小工程,
但是 其中有很多build.gradle的配置文件
所以我们会在最外面的 build.gradle配置所有的公共资源,并且在最外面添加`allprojects{... ...}`标签
之后我们会在Service,Dao和webb的模块中将他们的build.gradle里面共同的东西删掉
但是由于逻辑关系service会调用dao的东西,所以说要在service的build.gradle文件中注入dao模块,此时我们service即可以使用 dao的代码了