Gradle 入门
最后修改时间:2023 年 8 月 23 日在本教程中,我们将创建一个 Gradle 项目,运行并测试它,并使用 Gradle 运行可执行 JAR 文件。
步骤1.创建项目
让我们使用 Java 创建一个 Gradle 项目。
使用 IntelliJ IDEA 创建新的 Gradle 项目
在欢迎屏幕上,单击“新建项目”。
在打开的页面上,让我们指定项目的名称 (FizzBuzz) 和位置。
让我们选择Java选项,这是我们的项目和Gradle所需要的,因为我们正在创建 Gradle 项目。
IntelliJ IDEA 会自动在JDK字段中添加项目 SDK(JDK)。在我们的教程中,我们使用开放的 JDK 14 版本。
您可以更改所选的 JDK,IntelliJ IDEA 将下载合适的 Gradle 版本。您唯一需要的就是互联网连接。
让我们保留默认的Groovy for Gradle DSL 并取消选择“添加示例代码”选项,因为我们将从头开始添加我们自己的代码。
我们可以使用ArtifactId的默认信息(基本上是我们项目的名称),并将默认信息保留在GroupId字段中。
单击创建。
创建项目并完成索引后,让我们看看里面有什么:
IntelliJ IDEA 使用build.gradle文件创建一个项目,其中包含以下代码:
plugins { id 'java' } group 'org.example' version '1.0-SNAPSHOT' repositories { mavenCentral() } dependencies { testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.2' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.2' } test { useJUnitPlatform() }
如您所见,IntelliJ IDEA 方便地添加了测试依赖项。IntelliJ IDEA 支持build.gradle文件内的代码完成。因此,如果我们决定添加更多依赖项,IntelliJ IDEA 将快速找到它们的名称和版本。
IntelliJ IDEA 还在项目工具窗口中创建带有main和test子目录的src文件夹。
IntelliJ IDEA 支持专用Gradle工具窗口,其中包含喜欢的项目及其默认任务。我们将使用此窗口来运行我们的任务。
如果您关闭了此窗口,您始终可以通过选择“查看”| “主菜单”来访问它。工具窗口 | 摇篮。
我们项目中的Gradle设置用于存储有关链接项目、Gradle JVM 和构建操作的信息。您可以从Gradle工具窗口快速访问它们(单击工具栏上的 )。
正如您所看到的,构建和测试操作被委托给 Gradle。此外,Gradle 包装器还用于确定我们项目的 Gradle。
项目结构( ) 包含有关项目的 JDK 和项目中使用的语言级别的信息。CtrlAltShift0S
步骤 2. 添加 Java 代码
现在让我们创建一个输出前 100 个FizzBuzz数字的 Java 应用程序。
将 Java 类添加到 Gradle 项目
在项目工具窗口中打开src文件夹。
单击主目录,然后右键单击java 子目录,然后从列表中选择“新建”|“ 包裹。
在“新建包”对话框中,输入包的名称com.gradle.tutorial。
现在右键单击该包并选择“新建”|“ Java 类。
在“新建 Java 类”对话框中指定 Java 类的名称,然后单击“确定”。在我们的例子中是这样的
FizzBuzzProcessor
。在主类中添加以下代码
FizzBuzzProcessor
:package com.gradle.tutorial; public class FizzBuzzProcessor { public static void main(String[] args) { for (int i = 1; i <= 100; i++) { System.out.println(convert(i)); } } public static String convert(int fizzBuzz) { if (fizzBuzz % 15 == 0) { return "FizzBuzz"; } if (fizzBuzz % 3 == 0) { return "Fizz"; } if (fizzBuzz % 5 == 0) { return "Buzz"; } return String.valueOf(fizzBuzz); } }
我们的应用程序已准备就绪。现在,让我们为其创建必要的测试。
创建一个测试类
FizzBuzzProcessor
在编辑器中打开主类,将插入符号放在类名称处,然后按。CtrlShift0T在打开的对话框中,确保我们的测试库是
JUnit4
(如果您想使用 JUnit5,那么请确保您拥有JUnit5
)并且目标包是com.gradle.tutorial
。我们添加名称FizzBuzzTest并保留其余默认选项不变,然后单击“确定”。现在打开创建的测试类并添加以下代码:
package com.gradle.tutorial; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.*; public class FizzBuzzTest { @Test public void FizzBuzzNormalNumbers() { FizzBuzzProcessor fb = new FizzBuzzProcessor(); Assertions.assertEquals("1", fb.convert(1)); Assertions.assertEquals("2", fb.convert(2)); } @Test public void FizzBuzzThreeNumbers() { FizzBuzzProcessor fb = new FizzBuzzProcessor(); Assertions.assertEquals("Fizz", fb.convert(3)); } @Test public void FizzBuzzFiveNumbers() { FizzBuzzProcessor fb = new FizzBuzzProcessor(); Assertions.assertEquals("Buzz", fb.convert(5)); } @Test public void FizzBuzzThreeAndFiveNumbers() { FizzBuzzProcessor fb = new FizzBuzzProcessor(); Assertions.assertEquals("Buzz", fb.convert(5)); } }
步骤 3. 使用 Gradle 运行应用程序
让我们快速运行该应用程序看看它是否有效。
从编辑器运行主类
FizzBuzzProcessor
在编辑器中打开主类。在装订线中,单击并选择Run 'FizzBuzzProcessor.main()'。
在“运行”工具窗口中检查结果。
步骤 4. 运行测试
现在,让我们运行我们创建的测试。
在 Gradle 项目中运行测试
我们可以使用该任务从编辑器或Gradle工具窗口运行测试test
。我们将使用编辑器。
单击编辑器的装订线。
测试结果将显示在“运行”工具窗口中。
如果我们在其中一项测试中更改默认数字,它将失败。
如您所见,“运行”工具窗口显示有关失败测试的信息,包括发生错误的特定代码行。
步骤 5. 创建可执行 JAR 文件
现在让我们构建应用程序来创建可执行 JAR 文件。
在“项目”工具窗口中,双击build.gradle文件以在编辑器中将其打开。
添加以下代码:
jar { manifest { attributes "Main-Class": "com.gradle.tutorial.FizzBuzzProcessor" } from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } }
单击编辑器将更改加载到您的项目中。
在Gradle工具窗口中,打开项目的节点,然后打开“任务”节点,然后双击构建任务以运行它。
IntelliJ IDEA 创建包含我们的 JAR 文件的构建目录。
您可以在命令行中使用命令运行创建的JAR文件
java -jar
。检查运行工具窗口的结果。
请注意,构建任务包括 Gradle 执行的测试任务。因此,如果我们在其中一个测试中犯了错误,测试任务就会失败,构建任务也会失败。
步骤 6. 使用 Gradle 运行 JAR 文件
现在让我们build.gradle
稍微调整一下该文件,以便我们可以在“运行任何内容”窗口中执行我们的 JAR 文件。
运行 JAR 文件
在“项目”工具窗口中,双击build.gradle文件以在编辑器中将其打开。
让我们添加
id 'application'
到该plugins
部分和以下代码:application { mainClassName = 'com.gradle.tutorial.FizzBuzzProcessor' }
单击编辑器将更改加载到您的项目中。
在Gradle工具窗口中,打开项目的节点,然后打开任务节点。我们可以看到Gradle添加了分发节点。打开节点并双击assembleDist任务来运行它。
如果我们现在检查构建目录,我们将看到 IntelliJ IDEA 创建了其他目录。
在Gradle工具窗口中,单击工具栏上的 。
在打开的窗口中,输入命令
gradlew run
。我们应该得到与在 IntelliJ IDEA 编辑器中运行应用程序时相同的结果。
或者,您可以在应用程序节点下执行运行任务。
感谢您的反馈意见!