Willow's blog

gradle_quick_start

本文介绍使用Gradle快速构建Java项目

由于博主使用的是Intellj IDEA,所以如果你对Intellj IDEA的项目结构不熟悉,那你可能需要先了解一下Intellj IDEA的项目结构:一个project(区别eclipse中的project)+ 多个modules,以下图为例,spring-boot-rmi是项目,greenqiang,laowang,oldwang,xiaoming是4个module

Gradle准备

  • 安装jdk或者jre,且版本至少是6以上
  • 官网安装gradle

配置文件与构建脚本

使用gradle构建项目,项目根目录下会有build.gradle和settings.gradle两个文件(如上图)

settings.gradle 配置文件

1
2
3
//多项目(或多modules)管理
//rootProject.name = "spring-boot-rmi" //根项目
include "old-wang", "green-qiang"

build.gradle 构建脚本

  • 根目录下的构建脚本 /build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//项目基本信息
group 'cn.willowspace'
version '1.0-SNAPSHOT'

//allprojects or subprojects
allprojects {
//应用插件
apply plugin: 'java'
//指定编译级别
sourceCompatibility = 1.8
targetCompatibility = 1.8
//指定依赖仓库
repositories {
mavenLocal()
mavenCentral()
maven {
url 'http://repo.spring.io/libs-milestone/'
}
}
//依赖管理
dependencies {
//spring-boot-starter-parent
compile group: 'org.springframework.boot', name: 'spring-boot', version: '1.2.8.RELEASE'
compile group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '1.2.8.RELEASE'
}
}
  • old-wang子项目的构建脚本 old-wang/build.gradle
1
2
3
4
5
6
7
8
9
10
11
//指定项目的源码及资源文件路径
sourceSets {
main {
java {
srcDir 'old-wang/src/main/java'
}
resources {
srcDir 'old-wang/src/main/resources'
}
}
}
  • green-qiang子项目的构建脚本 green-qiang/build.gradle
1
2
3
4
5
6
7
8
9
10
11
//指定项目的源码及资源文件路径
sourceSets {
main {
java {
srcDir 'green-qiang/src/main/java'
}
resources {
srcDir 'green-qiang/src/main/resources'
}
}
}

通过settings.gradle及build.gradle两类文件,我们就可以建立起项目之间的依赖及第三方依赖,一个java项目的基本构建就完成了。

更多gradle相关的用法,参考Gradle User Guide 中文版

IDEA中Gradle的设置 ,特别注意:不要在IDEA里开启offline work选项,否则你可能经常找不到你要的dependencies

  • Offline work - use this check box to work with Gradle in the offline mode. In this case Gradle will use dependencies from the cache. Gradle will not attempt to access the network to perform dependency resolution. If required dependencies are not present in the dependencies’ cache, a build execution will fail.
(EOF)
杨威
发布日期 :2017-01-25
自由转载-非商用-非衍生-保持署名(知识共享3.0许可证)
杨威 wechat
微信订阅号
写点什么 心里不慌