IntelliJ에서 기존에 있던 프로젝트를 클론한 후 새로운 코드 컨벤션과 함께 CheckStyle을 적용했다. 그랬더니 프로젝트 파일 전체가 무수히 많은 CheckStyle warning으로 뒤덮이게 되었다. 이 문제를 해결하기 위해 사용했던 방법들을 기록해본다.
코드 컨벤션 파일과 CheckStyle의 적용 과정은 생략한다.
//올바른 예시
@Query("SELECT m "
+ "FROM Member"
+ "m WHERE m.username = :username")
- '+' 문자 뒤에 한 칸씩 공백을 넣는다.
- " 문자 뒤에 공백을 넣지 않는다.
- warning이 사라지지 않으면 문자열의 공백을 모두 지우고 한 줄로 만든뒤 다시 개행을 넣어본다.
//올바른 예시
public static final String string = "test.string";
- JLS(Java Language Specification)에서 권장하는 키워드 순서를 따라야 한다.
-
[ public | protected | private ]
-
static
-
abstract
-
synchronized
-
[ transient | volatile ]
-
final
-
native
-
strictfp
-
[ int | long | String | class | enum | interface etc. ]
구글링해보니 .gitattributes 파일으로 CRLF 개행 문자 문제를 해결할 수도 있다고 한다. 나는 IntelliJ에서 직접 파일 설정을 변경하는 방식을 사용했다.
-
File-File Properties-Line Separators로 들어간다.
-
오른쪽 하단에서 Line Separator가 바뀐 것을 확인한다.
이 Line Separator 버튼으로 파일 하나의 개행 문자를 수정할 수도 있다.
파일 하나의 인덴트를 변경하는 방법과 한 번에 여러 파일의 인덴트를 변경하는 방법이 있다.
-
현재 파일의 인덴트를 수정하는 방법
- Ctrl + Shift + A를 누른다.
- 검색 창에서 "To Tabs"를 입력한다.
- 적용을 확인한다.
-
여러 파일의 인덴트를 한 번에 수정하는 방법
https://stackoverflow.com/questions/10299067/modifier-keyword-order-in-java
https://www.jetbrains.com/help/idea/configuring-line-endings-and-line-separators.html
https://stackoverflow.com/questions/50915842/intellij-how-to-convert-indents-for-all-files
https://stackoverflow.com/questions/8534819/how-can-i-use-tabs-for-indentation-in-intellij-idea