TIL

Code Convention 도구 "Spotless"

everyday-spring 2024. 9. 5. 20:07

팀프로젝트를 진행하면서 merge를 했는데 

코드의 일관성이 너무 떨어져서 튜터님이 알려준 Spotless plugin을 적용했다

 

build.gradle

plugins {
    id 'com.diffplug.spotless' version '6.23.3'
}

//compile시에 동작
tasks.named('compileJava') {
    dependsOn 'spotlessApply'
}

spotless {
    java {
        googleJavaFormat().aosp()
        // 아래 순서로 import문 정렬
        importOrder('java', 'javax', 'jakarta', 'org', 'com')
        // 사용하지 않는 import 제거
        removeUnusedImports()
        // 각 라인 끝에 있는 공백을 제거
        trimTrailingWhitespace()
        // 파일 끝에 새로운 라인 추가
        endWithNewline()
    }
}

 

컴파일할때 기본적인 정렬과 불필요한 코드를 삭제해주고

배포하는 경우에 고려해야 하는 google 포맷에 맞게 수정해준다