即将开始使用Gradle来创建项目,你需要做好以下准备工作:
Java Development Kit
,最低版本要求1.8,也就是常说的JDK8
。IntelliJ IDEA
。
IntelliJ IDEA
是当前主流Java开发工具,以后简称IDEA
,本文示例也是基于该编辑器进行开发,建议读者安装IDEA
,如果你是首次安装,会获得30天试用期,当然如果使用Eclipse
也可以,功能大都相同,主要是操作习惯上有所区别。
本文将主要介绍使用IDEA
通过Spring Initializr
来创建Gradle的springboot项目的步骤,首先分为Gradle-Groovy
和Gradle-Kotlin
两个版本,最后我们尝试不使用Spring Initializr
,手动创建项目。
本文除了讲解项目创建的流程外,还会解析项目初始化后的一些配置信息。
通过本文,你可以学到以下知识点:
首先使用项目构建工具
Spring Initializr
来创建项目。
打开IDEA
项目创建页面,选择Spring Initializr
创建工具,Type选择Gradle-Groovy
,JDK一般默认为本地已安装的版本,Java选择与JDK对应的8,具体配置如下图:
选择好配置后,点击Next
进入下一步。
本文选择Springboot的2.7.9
版本,其他任何选项都无需勾选(后续都可以按需引入),如下图:
选择好版本后,直接点击Create
,会自动创建一些基础的文件,并进入IDEA主界面,如下图:
创建项目完成后,项目文件夹中只包含一些基础的配置文件,还缺少很多工具和依赖,如创建时选择的Springboot2.7.9
,其实还没有包含在项目中,所以需要对项目进行初始化,来下载项目必要的一些工具和依赖项。
刚创建的gradle项目,IDEA
会为其下载内置的gradle版本,本文建议将其配置为前面手动安装的gradle-8.0.2
。
快速配置方式是:打开IDEA
右侧的Gradle
菜单栏,直接打开Gradle设置,如下图:
打开配置页面后,修改其中的两项配置为你的gradle安装目录,如下图:
修改完成后,点击OK
即可。
当修改Gradle
配置后,IDEA
会自动更新项目,如果未更新,也可以点击Gradle菜单中的刷新按钮手动更新,刷新按钮如下图:
初始化过程中,会联网从Maven中央仓库拉取相关依赖(Gradle使用的依赖仓库就是Maven仓库),通过build窗口可以看到下载情况:
该图是kotlin下的截图,但内容与Groovy下的一样。
下载完成后,可以看到build窗口的成功提示,即项目初始化完成。
通过上述步骤,应该已经创建并初始化成功了一个Gradle-Springboot的项目,其中与Gradle相关的文件有两个,都在项目根目录下:setting.gradle
和build.gradle
setting.gradle是模块声明文件,没有什么特殊的操作,其初始内容如下:
groovyrootProject.name = 'gradle-boot'
build.gradle是Gradle的重要配置文件,与Maven的pom.xml
相对应,上面示例的初始内容如下:
groovyplugins { id 'java' id 'org.springframework.boot' version '2.7.9' id 'io.spring.dependency-management' version '1.0.15.RELEASE' } group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = '1.8' repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter' testImplementation 'org.springframework.boot:spring-boot-starter-test' } tasks.named('test') { useJUnitPlatform() }
该文件的内容解析放在最后,因为其与Kotlin语言的配置基本一样,后续会放到一起比较并说明。
创建通过kotlin配置的gradle项目,与上述创建groovy配置的gradle项目步骤完全一样,只需要在最开始选择配置时Type
选择Gradle-kotlin即可,所以此处省略详细步骤,参照Gradle-Groovy即可。
通过上述步骤创建并初始化项目后,与Groovy形式的区别就在配置文件的文件类型上,使用Kotlin的配置文件是:setting.gradle.kts
和build.gradle.kts
。
配置文件内容也基本相同,只是语法稍微有所变化:
ktsrootProject.name = "gradle-boot-kts"
ktsplugins {
java
id("org.springframework.boot") version "2.7.9"
id("io.spring.dependency-management") version "1.0.15.RELEASE"
}
group = "com.example"
version = "0.0.1-SNAPSHOT"
java.sourceCompatibility = JavaVersion.VERSION_1_8
repositories {
mavenCentral()
}
dependencies {
implementation("org.springframework.boot:spring-boot-starter")
testImplementation("org.springframework.boot:spring-boot-starter-test")
}
tasks.withType<Test> {
useJUnitPlatform()
}
通过上面
build.gradle
和build.gradle.kts
的比较,可以看出配置的内容是一样的,只是语法有所变化,现编以build.gradle
为分析对象,简单的将配置内容分为五块进行分析。
repositories:定义项目的仓库,这里只有一个中央仓库(mavenCentral())。
dependencies:定义项目的依赖项,其中包括:
implementation:应用依赖项,这里是Spring Boot的starter依赖。 testImplementation:测试依赖项,这里是Spring Boot的starter-test依赖。 tasks.named('test'):对test任务进行配置,使用JUnit 5作为测试框架。
该标签用于引入本项目要使用的gradle插件,如本项目引入了Java
、org.springframework.boot
、io.spring.dependency-management
三个插件,每个插件提供相应的内置功能。
java
:Java插件,该插件会自动为项目配置Java编译环境和相关任务。org.springframework.boot
:Spring Boot插件,该插件会自动为项目配置Spring Boot应用所需的基本配置。io.spring.dependency-management
:Spring Boot依赖管理插件,该插件会自动管理Spring Boot应用所需的依赖版本。Gradle插件官方说明文档:Using Gradle Plugins
Gradle官方插件中心:Gradle - Plugins
在管理中心,用户可以自己上传自定义的插件供别人使用,也可以搜索已提供的插件。
配置文件中没有明确的properties
标签,我将零散的配置定义统称为properties
,如:
group
:指定项目的groupId。version
:指定项目的版本号。sourceCompatibility
:指定Java源代码的版本兼容性,这里是1.8,也就是Java 8。该标签用于配置依赖仓库的地址,可以多仓库,本示例中默认使用Maven的中央仓库。在使用Maven时,我们是在Maven的setting.xml
中进行仓库地址配置。
该标签用于管理项目的依赖项,与Maven中的dependencies
标签相对应。
改变前用于配置一些任务项,在本示例中:
tasks.named('test') { useJUnitPlatform() }
该配置的作用是让test
任务使用Junit
测试工具。
除本示例项目中默认的配置外,Gradle还有很多配置项,如:项目构建脚本配置bulidscript
、子项目管理subprojects
,发布管理publishing
等等,可以查看官方文档进行详细了解:Gradle DSL Version 8.0.2
理论上,你的项目根目录下有build.gradle
文件,就会被IDEA
识别为Gradle项目,所以下面来尝试只用配置文件,其他的让IDEA
来帮助我们完成,从而创建一个Gradle-Springboot项目。
gradle-boot-my
。gradle-boot-my
文件夹下,如下图:
setting.gradle
文件中的项目名,如下:groovyrootProject.name = 'gradle-boot-my'
经过以上几步,其实你已经有了一个Gradle的空项目,只不过现在还没有Springboot的相关文件:启动类、配置文件等,我们可以自己创建这些文件夹与文件,注意文件夹结构要是正确的,可参考前面IDEA帮助创建的文件夹结构。
启动类代码:
javapackage com.example;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* 自定义启动类
*
* @author dingdangdog
* @date 2023/3/24 14:35
*/
@SpringBootApplication
public class BootApplication {
public static void main(String[] args) {
SpringApplication.run(BootApplication.class, args);
}
}
经过上述简单的几步,就完成了一个简单springboot项目从无到有的创建过程。使用kotlin配置gradle的方式就不演示了,步骤是一样的,读者可以自行测试,就当课后练习了吧。😁
出了以上通过IDEA搭建Gradle项目外,Gradle自身也支持初始化空项目,官方有一些示例教程,可以选择阅读测试:Try Gradle
上面通过两种方式(Spring Initializr
、手动创建
)搭建了Gradle-Springboot项目,当然也是不得不说IDEA
功不可没。
通过本文,你应该学到了一下知识:
建站因为热爱,生活需要Money,请屏幕前的大佬动动您发财的小手,点击一次以示鼓励,祝您生活愉快!
PS:就目前的访问量,即便每个访客都点一次广告,收入也不足以支付运营成本。
如果看不到广告,可能是网络原因或被拦截了,那就算了吧。再次祝您生活愉快~~
本文作者:DingDangDog
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!