Github Action 오류, @Value 오류, IllegalStateException

문법식·2022년 2월 22일
0

로컬에서 테스트를 전부 통과한 스프링 부트 프로젝트가 CI/CD를 위해 Github로 푸시하니까 글 아래 첨부한 오류가 났다. 원인을 파악해보니 CI할 때 @Value로 오류가 발생한 것이였다. 상황은 아래와 같다.

  • 보안을 위해 .gitignoreapplication-secret.properties에 있는 값을 @Value로 값을 바인딩해서 쓰는 클래스가 있었다.
  • 로컬에서는 .gitignoreapplication-secret.properties 있기 때문에 예외가 발생하지 않았다.
  • 그러나, Github에는 application-secret.properties가 없기 때문에 Github ActionCI를 할 때 해당 값을 찾지 못해서 예외가 발생했다.

해당 값을 찾지 못했을 때는 default 값을 사용하게 하면 예외를 해결할 수 있다. @Value("${secret.value:not found!}")와 같이 :뒤에다가 not found!라는 default값을 줘서 해결했다.

java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:132
        Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException at ConstructorResolver.java:800
            Caused by: org.springframework.beans.factory.BeanCreationException at AutowiredAnnotationBeanPostProcessor.java:405
                Caused by: java.lang.IllegalArgumentException at PropertyPlaceholderHelper.java:180
profile
백엔드

0개의 댓글