Skip to content

Latest commit

 

History

History
93 lines (71 loc) · 3.02 KB

devops-boot-gradle-plugin.md

File metadata and controls

93 lines (71 loc) · 3.02 KB

devops-boot-gradle-plugin

功能列表

devops-boot-gradle-plugin是一个用于快速构建Spring Boot应用程序的gradle插件,引入该插件后,会为开发者自动完成:

  • 配置jdk插件及编译选项,默认版本为1.8
  • 配置maven仓库列表,除中央仓库之外还添加了腾讯源
  • 添加spring boot相关插件
  • 添加依赖管理插件,并引入devops-boot-dependencies基础依赖bom
  • 配置JUnit相关支持及依赖
  • 支持云原生编译打包
  • 支持配置是否引入kotlin
  • 支持配置jdk版本

如果设置了kotlin支持,本插件还会进行如下的额外配置:

  • 添加kotlin jvm插件,并配置kotlin相关编译选项
  • 添加spring kotlin插件,支持all open
  • 添加kotlin-stdlib-jdk8kotlin-std-lib-reflect依赖

使用方式

  • build.gradle.kts
plugins {
    id("com.tencent.devops.boot") version ${version}
}
  • build.gradle
plugins {
    id 'com.tencent.devops.boot' version ${version}
}

配置属性

支持在gradle.properties中进行如下配置:

属性 类型 默认值 说明
devops.kotlin boolean true 是否添加kotlin支持
devops.javaVersion string 1.8 jdk版本
devops.copyWithVersion boolean false 拷贝jar到release目录时是否带版本号
devops.assemblyMode string null 支持consul/k8s/kubernetes,默认使用consul

功能介绍

1. 配置maven仓库列表

从上到下顺序依次为,

  1. Tencent Mirrors
  2. mavenCentral
  3. jcenter
  4. MavenSnapshotRepo

2. 配置依赖管理

  • 添加dependency-management插件
  • 添加devops-boot-dependenciesbom依赖

3. jdk插件及编译配置

  • 添加java插件
  • 配置编译选项
    • sourceCompatibility=<devops.javaVersion>
    • options.encoding=UTF-8

4. kotlin插件及编译配置

如果 devops.kotlin=true,则,

  • 添加kotlin-jvm插件
  • 添加kotlin-allopen插件
  • 配置编译选项
    • jvmTarget=<devops.javaVersion>
    • freeCompilerArgs=listOf("-Xjsr305=strict", "-java-parameters")
  • 添加kotlin-stdlib-jdk8kotlin-reflect依赖
  • 配置ktlintktformat任务

5. JUnit依赖配置

对于非空(包含src目录)模块,

  • 添加org.springframework.boot:spring-boot-starter-test依赖

6. SpringBoot插件配置

对于非空(包含src目录)、且为SpringBoot启动模块(模块命名以boot-开头),

  • 添加org.springframework.boot插件
  • 配置copyToRelease任务
    • 执行gradle build后,自动将jar包拷贝到release目录下
    • 根据devops.copyWithVersion决定拷贝时是否带版本号
  • 配置SpringCloud支持
    • 根据devops.assemblyMode配置,自动添加微服务相关依赖项,目前支持的类型有consul/k8s(不区分大小写)