#!/bin/bash #============================================================================== # pre-commit hook (Java Maven) # Maven 컴파일 검증 — 컴파일 실패 시 커밋 차단 #============================================================================== echo "pre-commit: Maven 컴파일 검증 중..." # Maven Wrapper 사용 (없으면 mvn 사용) if [ -f "./mvnw" ]; then MVN="./mvnw" elif command -v mvn &>/dev/null; then MVN="mvn" else echo "경고: Maven이 설치되지 않았습니다. 컴파일 검증을 건너뜁니다." exit 0 fi # 컴파일 검증 (테스트 제외, 오프라인 가능) $MVN compile -q -DskipTests 2>&1 RESULT=$? if [ $RESULT -ne 0 ]; then echo "" echo "╔══════════════════════════════════════════════════════════╗" echo "║ 컴파일 실패! 커밋이 차단되었습니다. ║" echo "║ 컴파일 오류를 수정한 후 다시 커밋해주세요. ║" echo "╚══════════════════════════════════════════════════════════╝" echo "" exit 1 fi echo "pre-commit: 컴파일 성공"