시작 절차와 규칙은 CONTRIBUTING.md를 따릅니다. 이 문서는 Java 코드 스타일 기준과 그 강제 방식입니다.
Naver 캠퍼스 핵데이 Java 코딩 컨벤션 을 따릅니다. 전문은 공식 문서를 참조하고, 이 저장소에 복사하지 않습니다.
CI가 스타일을 강제합니다. 규칙이 문서상 권고에 그치지 않습니다.
- Checkstyle 이 CI 게이트입니다.
backend-ci / check가 실행하는./gradlew check에 포함되며,maxWarnings = 0이라 위반이 하나라도 있으면 실패합니다. 룰셋은config/checkstyle/naver-checkstyle-rules.xml(Naver 공식)입니다. CI는 매번 새 러너라clean을 붙이지 않습니다 — 로컬에서는build/에 이전 결과가 남으므로 완료 보고 전 검증은./gradlew clean check --no-daemon그대로입니다. .editorconfig는 에디터/IDE가 저장 시 자동 포맷하도록 합니다(강제 아님, 편의). IntelliJ·VS Code는 기본 지원합니다..gitattributes가*.java등 텍스트 파일을eol=lf로 고정해, OS와 무관하게 개행이 일관됩니다.
Checkstyle이 검사하는 주요 항목: 개행 LF, 탭 들여쓰기, 줄 끝 공백 금지, 줄 길이 120자, import 순서(static 최상단), 파일 끝 개행 등.
| 항목 | 값 |
|---|---|
| 들여쓰기 | 탭 (탭 폭 4) |
| 줄 길이 | 최대 120자 |
| 개행 | LF (\n), 파일 끝 개행 필수 |
| 줄 끝 공백 | 금지 |
| import | static import를 최상단에 두고 그룹별 정렬 |
| 인코딩 | UTF-8 |
세부 값은 .editorconfig와 Naver 룰셋에 있습니다.
완료 전 공통 검증(./gradlew clean check --no-daemon)에 스타일 검사가 포함됩니다. 스타일만 따로 확인하려면:
./gradlew checkstyleMain checkstyleTest --no-daemon위반 리포트는 build/reports/checkstyle/main.html·test.html에서 확인합니다.
- 대부분의 포맷(탭·개행·줄 끝 공백·파일 끝 개행)은 IDE가
.editorconfig로 자동 정리합니다. 저장 시 포맷을 켜두세요. - import 순서·줄 길이 등은 리포트를 보고 직접 고칩니다.
- 이미 배포된 룰셋 파일(
config/checkstyle/)은 팀 합의 없이 바꾸지 않습니다.
- 탭 들여쓰기(폭 4), 줄 길이 120자 이내
- LF 개행, 파일 끝 개행, 줄 끝 공백 없음
- static import 최상단
-
./gradlew checkstyleMain checkstyleTest통과