1 분 소요

1. 준비

코드를 다운로드 받는다.

깃허브에서 두 개의 파일을 다운로드 받는다.

  • naver-intellij-formatter.xml
  • naver-checkstyle-rules.xml

파일을 프로젝트 폴더 최상단에 넣어준다.

스크린샷 2022-07-13 오전 1 48 15

2. formatter 적용

Intellij의 코드 스타일을 naver-coding-convention 형식으로 변경한다.

  1. Preference - Editor - Code Style - Java에 들어가면 아래 사진처럼 나온다.
    스크린샷 2022-07-13 오전 1 51 35
  2. 노란색 동그라미 친 톱니바퀴를 누르고 Import Scheme -> IntelliJ IDEA code style XMl 을 클릭한다.
  3. 프로젝트에서 아까 다운받은 naver-intellij-formatter.xml 을 찾아서 open한다.
  4. 주황색 동그라미에 체크되어 있으면 없애준다. 🌟
  5. Tab sizeIndent가 4인걸 확인해주고 OK를 누른다.

formatter 단축키

mac OS 기준으로,

  • cmd+option+L : code format 맞추기
  • ctrl+option+O : 불필요한 import 제거 및 import 순서 재배치

3. CheckStyle 연동

CheckStyle이란, 이미 만들어진 코드가 “네이버 핵데이 Java 코딩 컨벤션”에 맞게 작성되었는지 검사하는 도구이다.

스크린샷 2022-07-13 오전 1 57 12
코드 변경에 앞서서, 만약 위 사진에서 밑줄 친 부분이 빨갛게 뜬다면, option + enter를 눌러서 Fetch external resource를 클릭한다.

이제 코드를 변경해보자.

1) 해당 부분을 찾아서 지워준다.

CheckBox를 적용하지 않을 예외 파일을 설정해주는 모듈인데 필요없다.

<!--- Suppression -->
	<module name="SuppressionFilter">
		<property name="file" value="${suppressionFile}"/>
		<property name="optional" value="true"/>
	</module>

2) 해당 부분도 지워준다.

우리는 들여쓰기를 4space 방식을 사용하는데, CheckBox는 기본으로 tab 방식을 지원하기 때문에 이걸 변경하려는 것이다.

<!-- [indentation-tab] -->
<module name="RegexpSinglelineJava">
    <property name="format" value="^\t* "/>
    <property name="message" value="[indentation-tab] Indent must use tab characters"/>
    <property name="ignoreComments" value="true"/>
</module>

3) 이제 tab 방식으로 되어있으면 오류가 표시되는 모듈을 넣어준다.

<module name="FileTabCharacter">
    <property name="eachLine" value="true"/>
</module>

그런데 위치가 중요하다!🚨

<module name="TreeWalker">
blabla....
</module>
<module name="FileTabCharacter">
    <property name="eachLine" value="true"/>
</module>

이런 식으로 FileTabCharacter를 TreeWalker 바깥에 위치시켜야 한다.

CheckStyle-IDEA 플러그인을 다운로드

Preference - Plugins 에서 CheckStyle-IDEA 플러그인을 다운로드한다.
스크린샷 2022-07-13 오전 2 03 53

Preference - Tools - Checkstyle에서 버전을 8.24 이상으로, Scan Scope를 All sources(including tests)로 맞추고,
+ 를 눌러, 위에서 편집해준 naver-checkstyle-rules.xml 를 추가해준다.
스크린샷 2022-07-13 오전 2 05 14

CheckStyle 사용 방법

1) intellij에서 원하는 파일에 돌리기

스크린샷 2022-07-13 오전 2 12 18

하단의 checkstyle을 누른 뒤에 좌측 초록색 재생 버튼을 누르면, checkstyle에 맞지 않는 부분이 경고로 뜬다.
이 경우에 formatter 단축키인 cmd+option+L을 누르면 자동으로 코드를 알맞게 formatting 해준다.
임포트에 경고가 표시되어 있다면, ctrl+option+O로 재배치 가능하다.

2) commit 시에 checkstyle 검사하기

Ref.



💛 개인 공부 기록용 블로그입니다. 👻

맨 위로 이동하기

태그:

카테고리:

업데이트: