前言
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。Gradle 构建脚本使用的是 Groovy 或 Kotlin 的特定领域语言来编写的,而不是传统的XML。
当前官方支持的语言为Java、Groovy、Scala、C++、Swift、JavaScript等以及Spring框架。(维基百科)
注释
使用Gradle创建项目
创建普通的Java项目
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 27 28 29 30 31
| plugins { id 'java' }
group 'org.example' version '1.0-SNAPSHOT'
repositories { mavenLocal() mavenCentral() }
dependencies {
testCompile group: '', name: '', version: '' compile group: '', name: '', version: '' provided group: '', name: '', version: '' }
|
创建JavaWeb项目
- 创建一个普通的Gradle项目,在
main
目录下创建webapp/WEB-INF/web.xml
src/main/webapp/WEB-INF/web.xml
1 2 3 4 5 6 7
| <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> </web-app>
|
build.gradle
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| plugins { id 'java' id 'war }
group 'org.example' version '1.0-SNAPSHOT'
repositories { mavenCentral() }
dependencies { testCompile group: '', name: '', version: '' compile group: '', name: '', version: '' provided group: '', name: '', version: '' }
|
创建包含父子级模块的项目
- 如果父模块引入的依赖想让子模块继承,需要在父模块的
build.gradle
中用allprojects{}
包裹起来
build.gradle
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| allprojects { plugins { id 'java' } group 'org.example' version '1.0-SNAPSHOT' repositories { mavenCentral() } dependencies { testCompile group: '', name: '', version: '' compile group: '', name: '', version: '' provided group: '', name: '', version: '' } }
|
- 此时所有子模块
build.gradle
即便是什么也不配置,也同样拥有所有被allprojects{}
包裹起来的配置
子模块引用其他子模块的依赖
- 如果多个子模块有相同的依赖,可以现在其中一个子模块配置依赖,然后在另一个子模块引用这个子模块的所有依赖
:子模块名
:其他子模块名可以在父模块的settings.gradle
中复制
build.gradle
1 2 3
| dependencies { compile(":子模块名") }
|
将Maven的本地仓库作为Gradle的本地仓库
变量名:GRADLE_USER_HOME
变量值:Maven的本地仓库路径
完成
参考文献
哔哩哔哩——代码基基
javaroad