인텔리J에서 스프링 프로젝트를 생성하면 아래 셋팅은 미리 설정하면 좋습니다.
1. 어노테이션 프로세싱 활성화
롬복과 같은 외부 라이브러리를 의존성 주입하게 될 경우 해당 사항을 체크해줘야 컴파일 시 문제 없이 동작합니다.
설정에서 검색창에 annotation
을 입력하면 아래와 같은 화면이 나옵니다.
2. Build and run IntelliJ IDEA로 변경
IntelliJ IDEA 인텔리제이 자체에서 제공하는 빌드 자동화 도구입니다.
기본은 Gradle로 설정 돼 있습니다. 이걸 IntelliJ IDEA로 변경하면 더 빠른 테스트를 할 수 있습니다.
Gradle빌드와 IntelliJ IDEA 빌드의 차이는 증분 빌드 여부
입니다.
IntelliJ IDEA는 변경된 부분만 빌드를 하는 방식으로 기존에 빌드가 돼 있는 부분은 건너뛰고 새로 변경된 부분만 빌드하는 방식입니다.
그렇기 때문에 Gradle빌드 보다 더 빠르게 빌드할 수 있습니다. 하지만, IntelliJ IDEA는 기존에 빌드한 파일이 삭제된 경우도 같이 빌드가 될 수 있습니다. 그래서 종종 queryDSL과 mapStruct와 같이 컴파일 후 사용하는 코드가 빌드가 잘 안될 경우가 있을 수 있습니다.(반복적인 클린 -> 빌드 -> 리빌드 재귀..)
올바르게 빌드를 하고 싶다면 Gradle로 하는 것도 좋은 전략이라 생각합니다.
3. encoding UTF-8로 변경
인코딩이 encoding x-windows-949
로 설정돼 있는 경우 아래와 같이 UTF-8로 변경하는 것이 좋습니다.x-windows-949
란 한글 인코딩의 한 종류이며 EUC-KR의 확장형입니다. 오래전 마이크로소프트가 개발했던 한글 인코딩입니다.
이것도 잘못하여 꼬이면 Swagger UI의 글자가 깨지는 경우가 발생할 수 있습니다.
위 3가지는 프로젝트 생성 후 한번 쯤 확인해보면 좋은 것이라 생각되네요.
4. 파일 끝에 개행을 자동으로 추가하기
행의 끝은 개행(EOL, end of line)으로 끝나는 것이 POSIX(Portable Operating System Interface) 표준이라고 합니다. 이와 같은 설정을 하지 않은 경우 예기치 않은 동작이 일어날 수 있기에 기본적으로 설정을 하시면 좋습니다.
설정에서 Ensure every saved file ends with a line break
를 체크해주시면 됩니다.