본문 바로가기
Spring

[spring] 스프링 클라우드 컨피그 서버 구축 중 에러 Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.7.1:run 해결

by 초이사 2023. 5. 23.

스프링 마이크로서비스 코딩 공작소 실습을 해보던 도중 오류가 발생했다.

 

스프링 클라우드 컨피그 서버 구축을 위한 파일을 모두 작성한 후 실행했더니

Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.7.1:run 에러가 발생했다.

오류가 무엇인지 찾는 데 생각보다 오래걸렸다. 원인이 궁금했는데, 테스트 실패를 무시하고 빌드할 수 있게 하는 방법들 위주로만 검색이 되었다. 그래도 계속 찾은 결과 원인을 알아내는데 성공했다!

 

원인

스프링부트 2.4.0 이후에는 bootstrap을 사용하지 않는데, 내 프로젝트의 스프링부트 버전은 2.7.1이라서 생긴 문제이다. 

 

스프링 부트 2.4.0 이전에는 bootstrap.yml을 사용하면 기존의 application.yml 보다 먼저 로드되어 configserver로부터 설정파일을 먼저 읽어와 먼저 모듈에 적용할 수 있기에 사용했다고 한다.

하지만 2.4.0 이후에는 bootstrap.yml 파일 없이 application.yml에서 모두 관리가 가능하기에 사용하지 않는다고 한다.

 

 

해결

책의 이후 내용도 그렇고 참고하는 자료에서 bootstrap.yml을 활용한 경우가 많아서 처음 배우는 입장에서는 bootstrap.yml을 살리는 방향으로 가는 것이 좋겠다고 판단했다.

그래서 application.yml 파일에 bootstrap.yml 인식하도록 작성했다.

application.yml

spring:
  config:
    import:
      - classpath:/bootstrap.yml

 

이후 아래 명령어를 실행하면 성공적으로 서버가 실행된다.

$ mvn spring-boot:run

 

 

 

 

참고

 

 

댓글