
ClassNotFoundException: org.codehaus.plexus.archiver.FileSet
Spring Boot 프로젝트 생성 후 실행하는 과정에서 아래와 같은 오류가 발생했다.
발생한 오류
오류 메시지
ClassNotFoundException: org.codehaus.plexus.archiver.FileSet
java.lang.reflect.InvocationTargetException
또는:
Non-resolvable parent POM
오류가 함께 발생할 수도 있다.
오류 화면
1. Maven Parent POM 오류
예시 오류:
Non-resolvable parent POM
2. ClassNotFoundException 오류
예시 오류:
ClassNotFoundException: org.codehaus.plexus.archiver.FileSet
원인
문제의 원인은 대부분:
Maven dependency 다운로드 또는 캐시(.m2) 꼬임
이다.
즉:
- 내 Java 코드 문제 ❌
- Spring Boot 자체 문제 ❌
- Maven 라이브러리 캐시 문제 ⭕
현재 사용 환경
pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>4.0.6</version>
<relativePath/>
</parent>
Spring Boot 4.0.6 사용 중.
발생한 오류 상세
1. Parent POM 다운로드 실패
Non-resolvable parent POM
의미:
Maven이 Spring Boot 부모 설정을 다운로드하지 못함.
2. Maven 내부 클래스 누락
ClassNotFoundException: org.codehaus.plexus.archiver.FileSet
의미:
Maven 내부 dependency가 깨졌거나 정상 다운로드되지 않음.
해결 방법
1. Maven 강제 업데이트
STS(Eclipse)에서:
프로젝트 우클릭
→ Maven
→ Update Project
→ Force Update of Snapshots/Releases 체크
→ OK
또는 단축키:
Alt + F5
2. Maven 캐시(.m2) 삭제
아래 폴더 이동:
C:\Users\사용자이름\.m2\repository
다음 폴더 삭제:
org\codehaus\plexus
org\springframework\boot
3. STS 재실행
STS 종료 후 다시 실행.
4. Project Clean
Project
→ Clean
실행 후 프로젝트 재빌드.
결과
정상적으로 dependency가 다시 다운로드되면서:
ClassNotFoundException
오류 해결.
Spring Boot 프로젝트 정상 실행 완료.
추가로 알게 된 점
Spring Boot 버전 확인 위치
<version>4.0.6</version>
은:
Spring Boot 버전
이다.
modelVersion 의미
<modelVersion>4.0.0</modelVersion>
은:
Maven pom.xml 문서 규격 버전
이다.
즉 Spring Boot 버전과는 별개.
정리
이번 오류 원인
Maven dependency/cache 깨짐
사용 해결법
1. Maven Update
2. .m2 캐시 삭제
3. Clean
4. 재빌드
Spring Boot / Maven 개발 시 복구방법
'Spring' 카테고리의 다른 글
| [Spring Boot] Transaction rollback 처리와 @Transactional (0) | 2026.05.13 |
|---|---|
| [Spring Boot] MyBatis 게시판 구현 중 오류 해결 (0) | 2026.05.12 |
| [Spring Boot] @RequestBody와 @ModelAttribute 차이 (0) | 2026.05.11 |