android - gradle.build Android Kotlin with 一尘不染和 ktlint
问题描述
在学习 android 架构组件时,我从 codelabs 发现了这个 gradle build in android-sunflow 应用程序。评论了 gradle built 和 task clean 中的一尘不染和 ktlint。在 build.gradle(project: MyApplication)
buildscript {
ext {
kotlin_version = '1.3.31'
ktlint_version = "0.32.0"
}
plugins {
id "com.diffplug.gradle.spotless" version "3.23.0"
}
//task clean(type: Delete) {
// delete rootProject.buildDir
//}
spotless {
kotlin {
target "**/*.kt"
ktlint(ktlint_version)
}
}
我不明白它有什么用,使用它有什么好处?
解决方案
它通过将代码格式化为特定规则来帮助保持代码清洁。在这种情况下,他们习惯于基于 ktlint ( https://ktlint.github.io/ ) 格式化 kotlin kode。因此,通过运行一个任务./gradlew spotlessApply
,它会自动修复 kotlin 文件格式,例如像这样的一致间距:
// multiple spaces after "val long" for vertical alignment
val short = ""
val long = ""
进入
val short = ""
val long = ""
他们可以从终端手动运行它,或者将其与 CI 集成以实现自动化。