template-java-maven/CLAUDE.md
Team Workflow Bot 0b1ddc96bb chore: Java Maven 프로젝트 템플릿 초기 구성
- CLAUDE.md: Java/Spring Boot/Maven 프로젝트 가이드
- .claude/settings.json: Maven 빌드 도구 권한 설정
- .claude/rules/: Java 코드 스타일, 네이밍, 테스트 규칙
- .githooks/pre-commit: Maven 컴파일 검증
- .mvn/settings.xml: Nexus 프록시 레포지토리 미러
- .sdkmanrc: JDK 17 버전 고정
2026-02-14 08:20:39 +09:00

1.9 KiB

프로젝트 개요

  • 타입: Java + Spring Boot + Maven
  • JDK: 17 (.sdkmanrc 참조)
  • 프레임워크: Spring Boot
  • 빌드 도구: Maven (Maven Wrapper 사용)

빌드 및 실행

# 빌드
./mvnw clean compile

# 패키징
./mvnw clean package -DskipTests

# 테스트
./mvnw test

# 특정 테스트 클래스 실행
./mvnw test -Dtest=클래스명

# 로컬 실행
./mvnw spring-boot:run

# 린트 (Checkstyle 설정된 경우)
./mvnw checkstyle:check

프로젝트 구조

src/
├── main/
│   ├── java/
│   │   └── com/gcsc/{프로젝트}/
│   │       ├── config/          # 설정 클래스
│   │       ├── controller/      # REST 컨트롤러
│   │       ├── service/         # 비즈니스 로직
│   │       ├── repository/      # 데이터 접근
│   │       ├── domain/          # 엔티티
│   │       ├── dto/             # 데이터 전송 객체
│   │       ├── exception/       # 예외 처리
│   │       └── util/            # 유틸리티
│   └── resources/
│       ├── application.yml      # 공통 설정
│       ├── application-local.yml # 로컬 설정 (.gitignore)
│       └── application-prod.yml  # 운영 설정
└── test/
    └── java/                    # 테스트 코드

팀 규칙

  • 코드 스타일: .claude/rules/code-style.md 참조
  • 네이밍 규칙: .claude/rules/naming.md 참조
  • 테스트 규칙: .claude/rules/testing.md 참조
  • Git 워크플로우: .claude/rules/git-workflow.md 참조
  • 팀 정책: .claude/rules/team-policy.md 참조

의존성 관리

  • Nexus 프록시 레포지토리를 통해 의존성 관리 (.mvn/settings.xml)
  • 새 의존성 추가 시 pom.xml에 버전 명시
  • Spring Boot BOM 범위 내 의존성은 버전 생략 가능