준준의 기록일지

[의존성 에러] plugin org.apache.maven.plugins:maven-clean-plugin:2.5 or one of its dependencies could not be resolved 본문

스프링 에러

[의존성 에러] plugin org.apache.maven.plugins:maven-clean-plugin:2.5 or one of its dependencies could not be resolved

junjunwon 2020. 8. 4. 15:13

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."




[에러 목록]

org.apache.maven.plugins:maven-clean-plugin:2.5an error has occured. see the log file

 

plugin org.apache.maven.plugins:maven-clean-plugin:2.5 or one of its dependencies could not be resolved:failed to read artifact descriptor for org.apache.maven.plugins:maven-clean-plugin:jar:2.5: could not transfer artifact org.apache.maven.plugins:maven-clean-plugin:pom:2.5 from/to central(https://repo.maven.apache.org/maven2)

 

 

original error could not transfer artifact

 

errors running builder 'maven project builder' on project

 

[문제]

- 잘 실행되던 프로젝트에서 어떤 문제로 인해 .m2를 지웠꼬 이후에 정상 복원이 되지 않는 문제가 발생했다. (알고보면 진짜 별거 아니였던..)

- maven install, clean 부터 Project update/Run on server 의 동작이 위와 같은 에러와 함께 전부 실패했다.

- 해당 오류는 보통 메이븐 저장소에 문제가 생긴 것이라고 한다.

그래서 C:\Users\로그인계정\.m2\repository\... 쪽에 m2나 repository 아니면 특정 폴더를 삭제해주면 문제가 해결된다고 한다.

 - 문제 해결 순서 : 실행 중인 eclipse 종료 -> 위의 경로에 집입해 .m2 폴더 삭제 -> eclipse 재 실행 -> dependencies가 build되는 것을 볼 수 있다.

 

하지만 이떄, 내 문제는 해결되지 않았다. 계속 plugin 에러를 뿜어내면서 의존성 주입, 플러그인 에러 등과 함께 계속 문제가 발생했는데, 도저히 뭔지 알 수가 없었다.

 

그래서 workspace를 다시 생성하고 해당 폴더에 project를 import 해오려고 해도 오류....

전체 복사 붙여넣기를 하려는 순간, 네트워크에 이상이 있다는 것을 확인했다.

 

즉,,,,,,,해당 PC에 DNS서버가 꺼져있어서 사이트로부터 애초에 maven 관련 의존성들을 가져오지 못했던 것..!!!

로컬에서 메이븐 의존성 자체가 가능하다고 생각했는데, 네트워크가 반드시 연결되어 있어야 한다는 것을 배웠다.

아마 네트워크가 연결된 상태에서 repository에 전부 의존성을 추가했으면 이후에 문제는 없겠지만, 어떠한 문제때문에 나는 .m2/repository 를 지웠었고, 이후 네트워크조차 연결되지 않은 상태에서 쇼를 한것이였던것.... (vm에서 작업했기 때문에 발생할 수 있는 해프닝이라고 생각한다.)

 

네트워크가 연결되어 있을때 "BUILD FAILURE" 문제 해결 방법 (출처 : https://pnot.tistory.com/6 )

1. 다시 한번 maven install한다.

- Error test를 하면서 두 세번 돌리다보면 되는 경우가 있다고 한다.

2. Project 에서 Clean을 한다.

- Maven Clean으로 프로젝트가 클린되는 경우가 있다.

3. .m2 폴더를 삭제한 후 다시 install

- 위와 같이 삭제하고 install하면 된다.

4. tools.jar를 등록해준다.

- 아직 시도하지 않은 방법으로 jdk안에 있는 tools.jar을 추가해주는 방법인 것같다. 자세한 내용은 출처 사이트에 접속해 확인하면 된다.

 

[결론]

maven repository를 관리할때는 네트워크  연결이 되어있어야 한다.

이 후 eclipse를 실행하면 의존성을 쫙 가져오고, maven install, clean, update project부터 프로젝트 실행까지 정상적으로 완료할 수 있었다.