Gradle是一个好用的构建工具
使用它的原因是
1、配置相关依赖代码量少,不会像maven一样xml过多
2、打包编译测试发布都有,而且使用起来方便
3、利用自定义的任务可以完成自己想要的功能
安装
下载地址http://services.gradle.org/distributions/
下载你所需要对应的版本
下载后解压到你想要的目录
设置环境变量,找到Path,在原始内容基础上加入目录到\bin;,必须以分号结束 如果需要可以设置本地仓库目录GRADLE_USER_HOME=D:\gradle\repo
在cmd模式下查看,出现以下信息证明安装成功
IntelliJ IDEA的配置
Eclipse的配置
插件下载:Help->Eclipse Marketplace 搜索buildShip并安装
修改本地仓库路径:环境变量增加 GRADLE_USER_HOME 或者 Eclipse中Windows->Preferences->Gradle修改Gradle Home路径
https://www.cnblogs.com/IcanFixIt/p/6909338.html
gradle配置国内镜像
使用阿里云国内镜像
对单个项目生效,在项目中的build.gradle修改内容
buildscript { repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } maven{ url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'} } } allprojects { repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } maven{ url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'} } }
对所有项目生效,在USER_HOME/.gradle/下创建init.gradle文件
allprojects{ repositories { def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public' def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter' all { ArtifactRepository repo -> if(repo instanceof MavenArtifactRepository){ def url = repo.url.toString() if (url.startsWith('https://repo1.maven.org/maven2')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL." remove repo } if (url.startsWith('https://jcenter.bintray.com/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL." remove repo } } } maven { url ALIYUN_REPOSITORY_URL url ALIYUN_JCENTER_URL } } }
如何进行打包
双击war
打包完成之后的war文件会在
然后把war放入对应的tomcat目录即可
解释build.gradle和settings.gradle
首先是一个项目包含group、name、version
settings.gradle是用来管理多项目的,里面包含了项目的name
如rootProject.name = 'test'
在build.gradle中
apply是应用的插件,如:
apply plugin: 'java'
apply plugin: 'war'
这里我们用了java和war的插件
dependencies是用于声明这个项目依赖于哪些jar
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
这里说明的是,测试编译阶段我们依赖junit的jar
其中包括complile(编译时)runtime(运行时)testCompile(测试编译时)testRuntime(测试运行时)
repositories是一个仓库gradle会根据从上到下的顺序依次去仓库中寻找jar
repositories {
maven {
url "http://maven.aliyun.com/nexus/content/groups/public/"
mavenCentral()
}
}
这里我们默认的是一个maven的阿里仓库和中心仓库
从gradle源代码中我们看到地址是这样的
这里可以配置
mavenLocal() 使用本地maven仓库
mavenCentral() 使用maven中心仓库
maven{
url '你的地址'
}
使用固定的地址,这里可以使用阿里云的镜像下载速度会快一些,然后也可以使用公司内部的私服地址
maven {url 'http://maven.aliyun.com/nexus/content/groups/public/'}
有关gradle的jar冲突
默认情况下,如果有jar包冲突,gradle会自动依赖两个冲突jar包最新的一个版本,所以默认不需要进行管理。
如果真的出现无法解决的冲突,gradle也会出现明显的冲突提示,所以不需要担心
本地jar包位置和修改
但是对于IDEA来说木有用(当然上面的环境变量还是要添加的),在IDEA中使用gradle需要修改下面的路径
这样修改之后你就可以发现已经在自己下载jar了