编写Gradle构建脚本是管理项目构建、依赖、任务自动化等的关键步骤。构建脚本通常是一个名为build.gradle
(或build.gradle.kts
,如果你使用Kotlin DSL)的文件,位于项目的根目录下。下面通过一个基本的Java项目示例,介绍如何编写Gradle构建脚本。
1. 基础配置
首先,定义项目的基本信息,包括项目名、版本、使用的Java版本等。
plugins {
id 'java' // 应用Java插件
}
group 'com.example' // 组织名
version '1.0-SNAPSHOT' // 版本号
java {
toolchain {
languageVersion = JavaLanguageVersion.of(11) // 设置Java版本
}
}
2. 仓库配置
指定依赖仓库,通常是Maven Central或其他私有仓库。
repositories {
mavenCentral() // 使用Maven中央仓库
}
3. 依赖管理
添加项目依赖,包括生产代码和测试代码的依赖。
dependencies {
implementation 'org.slf4j:slf4j-api:1.7.36' // 生产代码依赖
testImplementation 'junit:junit:4.13.2' // 测试代码依赖
}
4. 任务定义
自定义任务或使用预定义任务,如编译、测试、打包等。
task hello {
doLast {
println 'Hello, Gradle!' // 打印消息到控制台
}
}
// 更多任务示例
task printJavaVersion {
doLast {
javaHome = java.toolchain.installationPath
println "Java version: ${javaHome}/bin/java -version"
}
}
5. 测试和构建
配置测试任务,比如使用JUnit平台。
test {
useJUnitPlatform() // 使用JUnit Platform
}
6. 打包和发布
配置如何打包项目,如生成jar或war文件,以及发布到本地或远程仓库。
jar {
manifest {
attributes 'Main-Class': 'com.example.Main' // 主类入口,对于可执行jar
}
}
// 发布到本地Maven仓库
uploadArchives {
repositories {
mavenDeployer {
repository(url: uri("${System.getProperty('user.home')}/.m2/repository"))
}
}
}
7. 使用Kotlin DSL
如果你更喜欢使用Kotlin语言编写构建脚本,可以改为使用build.gradle.kts
,语法会更加现代和类型安全。
plugins {
java
}
group = "com.example"
version = "1.0-SNAPSHOT"
java {
toolchain {
languageVersion.set(JavaLanguageVersion.of(11))
}
}
repositories {
mavenCentral()
}
dependencies {
implementation("org.slf4j:slf4j-api:1.7.36")
testImplementation("junit:junit:4.13.2")
}
tasks.register("hello") {
doLast {
println("Hello, Gradle!")
}
}
通过上述步骤,你可以开始编写和定制自己的Gradle构建脚本,以满足项目构建的各种需求。随着对Gradle更深入的理解,你可以进一步探索其高级特性,如多项目构建、插件自定义、依赖锁定等。