文章目录
- Gradle 简介
- 安装 Gradle
- 创建和配置 Gradle 项目
- 将 Gradle 项目打成jar包
- 多项目聚合
- 示例项目结构
- 步骤详解
Gradle 简介
Gradle 是一个基于 Groovy 和 Kotlin 的构建工具,用于自动化构建、依赖管理和项目管理。它结合了 Maven 的依赖管理和 Ant 的灵活性,提供了一种现代化的构建解决方案。与传统的 Apache Maven 和 Apache Ant 相比,它提供了更灵活、高效的构建系统和声明式的构建脚本语言。
安装 Gradle
安装 Gradle 非常简单,可以按照以下步骤进行:
下载 Gradle:下载地址
-
访问 Gradle 官网下载页面,选择最新版本的 Gradle,下载对应的压缩包(例如 .zip 或 .tar.gz)。
解压 Gradle: -
解压下载的压缩包到你选择的目录。
-
配置环境变量
在 Windows 系统中,设置系统环境变量 GRADLE_HOME 指向 Gradle 的安装目录,并将 %GRADLE_HOME%\bin 添加到系统 PATH 变量中。
设置系统环境变量GRADLE_HOME
添加到系统 PATH:
- 验证安装:
打开命令行,输入 gradle -v,如果显示 Gradle 的版本信息,则说明安装成功。
创建和配置 Gradle 项目
现在,让我们创建一个简单的 Java 项目,并使用 Gradle 进行配置和管理。
IntelliJ IDEA 提供了良好的 Gradle 支持,让我们结合实际操作,演示如何创建和配置一个简单的 Java 项目,并使用 Gradle 构建和运行项目。
- 创建 Gradle 项目:
打开 IntelliJ IDEA,选择 File -> New -> Project。
在弹出的窗口中,选择 Gradle,然后点击 Next。
- IntelliJ IDEA 将会自动创建一个基本的 build.gradle 文件,你可以在此文件中配置项目依赖、插件和任务。
build.gradle:
plugins {id 'java'
}group 'com.ruofei'
version '1.0-SNAPSHOT'repositories {mavenCentral()
}dependencies {implementation 'com.google.guava:guava:30.1.1-jre'testCompile group: 'junit', name: 'junit', version: '4.12'
}
点击run导入依赖
- 测试代码
测试导入一个google的包
package com.ruofei;import com.google.common.collect.ImmutableList;public class App {public static void main(String[] args) {ImmutableList<String> list = ImmutableList.of("Hello", "Gradle");System.out.println("Greetings from Gradle: " + list);}
}
-
构建项目:
在 IntelliJ IDEA 的右侧 Gradle 工具窗口中,展开你的项目,找到 Tasks -> build,双击运行构建任务。
-
运行项目
将 Gradle 项目打成jar包
- 修改build.gradle
在build.gradle中添加:
// 配置 JAR 打包任务
jar {manifest {attributes('Main-Class': 'com.ruofei.App' // 修改为你的主类)}// 如果需要包含资源文件或其他目录,可以通过以下方式配置// 包含依赖项from {configurations.compileClasspath.collect { it.isDirectory() ? it : zipTree(it) }}
}
- 右侧gradle目录点击build
在/build/libs/ 目录下生成相应的jar包,可以直接java -jar 执行
多项目聚合
演示一个简单的示例,主项目为一个 Java 应用程序,包含两个子项目:一个是 Java 库项目,另一个是 Java 应用程序项目。我们将展示如何设置和管理这些项目的依赖关系和构建过程。
示例项目结构
- 主项目: multi-project-demo
- 子项目1: library
- 提供一些工具类和服务
- 子项目2: application
- 使用 library 子项目的功能来创建一个应用程序
- 子项目1: library
步骤详解
1. 创建主项目
首先,在 IntelliJ IDEA 中创建一个新的 Gradle 项目作为主项目 multi-project-demo。
1. 打开 IntelliJ IDEA,选择 File -> New -> Project。
2. 选择 Gradle 作为项目类型,点击 Next。
3. 输入项目名称为 multi-project-demo
,选择存储路径,点击 Next。
4. 选择 Java,点击 Next。
5. 最后点击 Finish 完成项目的创建。
2. 添加子项目 library
接下来,我们将添加第一个子项目 library 到主项目中。
1. 在 IntelliJ IDEA 的主项目 multi-project-demo
中,右键点击主项目的根目录,选择 New -> Module。
2. 选择 Gradle,点击 Next。
3. 输入子项目的名称为 library
,选择存储路径,点击 Finish。
3. 添加子项目 application
然后,我们再添加第二个子项目 application。
1. 在 IntelliJ IDEA 的主项目 multi-project-demo
中,右键点击主项目的根目录,选择 New -> Module。
2. 选择 Gradle,点击 Next。
3. 输入子项目的名称为 application
,选择存储路径,点击 Finish。
4. 子项目 application的build.gradle中添加对lib项目的依赖:
build.gradle:
plugins {id 'java'
}group 'org.example'
version '1.0-SNAPSHOT'repositories {mavenCentral()
}dependencies {testCompile group: 'junit', name: 'junit', version: '4.12'implementation project(':library')
}
4. 配置 settings.gradle
现在,我们需要在主项目的 settings.gradle 文件中声明这两个子项目。
1. 打开 multi-project-demo
主项目的根目录。
2. 打开或者创建 settings.gradle
文件。
3. 在文件中添加以下内容(可能已经默认添加了):
include 'library'
include 'application'
这样就声明了 library 和 application 两个子项目。
5. 配置主项目 build.gradle
在主项目的 build.gradle 文件中配置主项目和所有子项目的依赖关系和其他设置。
plugins {id 'java'
}group 'org.example'
version '1.0-SNAPSHOT'repositories {mavenCentral()
}dependencies {testCompile group: 'junit', name: 'junit', version: '4.12'
}// 子项目配置
subprojects {// 应用 Java 插件apply plugin: 'java'// 配置项目依赖关系和版本控制dependencies {// 这里可以添加主项目的通用依赖// 例如:implementation 'com.google.guava:guava:30.1-jre'}// 所有子项目共享的配置configure([JavaCompile, Test]) {// 这里可以配置所有 Java 编译和测试任务的共享设置sourceCompatibility = JavaVersion.VERSION_1_8targetCompatibility = JavaVersion.VERSION_1_8}
}// 主项目特有的配置
在这个示例中:
- 主项目应用了 java 插件,确保项目可以编译和运行 Java 代码。
- 使用 subprojects 块配置了所有子项目共享的配置。
6. 编写和运行子项目代码
现在我们可以在每个子项目中编写代码,并且可以在 IntelliJ IDEA 中构建和运行它们。
例如,在 library 子项目中创建一个简单的 Java 类:
public class Library {public void greet() {System.out.println("Hello from Library!");}
}
在 application 子项目中使用 library 子项目的功能:
package com.example;public class App {public static void main(String[] args) {Library library = new Library();library.greet();}
}
7. 构建和运行子项目
在 IntelliJ IDEA 的 Gradle 工具窗口中,可以看到主项目和所有子项目。你可以双击每个子项目的任务(如 build 等),Gradle 将会执行这些任务。
对于 library 子项目,可以运行 build 任务来编译和打包库。
对于 application 子项目,可以运行 run 任务来运行应用程序。