Spotless 是一个代码格式化工具。它支持的开发语言有java, kotlin, scala, sql, javascript, css, json, yaml, etc; 它不仅能按照指定的规则去检测我们的代码指示出不合规的地方, 同时可以按照规则修复代码; 且发布了现成的maven|gradle plugin, 这里我们对gradle-plugin进行使用演示
在项目中配置使用Spotless
在Gradle项目中, 配置Spotless
gradle构建脚本使用groovy
- 首先在
build.gradle
中引入Liquibase 插件
buildscript {
ext {
springBootVersion = '2.1.0.RELEASE'
}
repositories {
mavenCentral()
maven {
url 'https://plugins.gradle.org/m2/'
}
}
dependencies {
classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}"
classpath "com.diffplug.spotless:spotless-plugin-gradle:3.23.1"
}
}
// 以外部文件的方式引入插件
apply from: 'gradle/spotless.gradle'
- 看一下
spotless.gradle
文件里面的内容
apply plugin: "com.diffplug.gradle.spotless"
spotless {
java {
removeUnusedImports()
target fileTree('.') {
include '**/*.java'
exclude '**/mybatis/**'
}
eclipse().configFile 'config/format/eclipse-java-google-style.xml'
}
}
-
eclipse-java-google-style.xml
是所要采用的代码格式化风格文件, 可以访问这里得到; -
在命令行终端执行以下命令对插件进行使用
// 做代码检查, spotless会显示出代码不合规范的地方并给出修改建议
gradlew spotlessJavaCheck
// 应用上面一步的修改建议
gradlew spotlessJavaApply
- 添加
pre-commit-hook
, 在做git commit前做代码规范检查
#!/bin/sh
#set -x
./gradlew spotlessJavaCheck checkstyleMain checkstyleTest findbugsMain
RESULT=$?
exit $RESULT
Over!