본문 바로가기

Android

ktlint와 AndroidStudio의 Import Order가 다를 때

반응형

어느 시점부터 린트 두 개가 싸웁니다. AndroidStudio는 ABC 순서로 import를 정리하고, ktlint는 특정 라이브러리를 밑으로 옮겨놓습니다. ktlint는 git hooks pre-commit으로 적용하고 있어 코드를 작성할 때와 커밋한 이후 모양이 달라지고... rebase 하고나면 또 안드로이드 쪽 따라서 달라지고... 이걸 리모트에 올리면 CI가 Import 순서 틀렸다고 때리고...

TL;DR

안드로이드 스튜디오 설정을 통해 해결할 수 있습니다. ktlint 설정을 통해서도 해결할 수 있지만, 모든 팀원이 적용해야 하는 터라 그냥 제가 바꾸려고 합니다.

Preferences > Editor > Code Style > Kotlin 메뉴에 진입합니다.

import 탭의 맨 아래에 존재하는 Import Layout 설정을 다음과 같이 변경합니다. 순서가 중요합니다.

해결

반응형