Programming/Spring Boot

No auto configuration classes found in META-INF/spring.factories 오류 해결

Jan92 2021. 7. 27. 00:00

 

 

IntelliJ Spring Boot Project 배포를 위한 jar 파일 생성 (Maven)

마무리 중인 Spring Boot 프로젝트 배포를 위해 작업된 프로젝트를 jar 파일로 만드는 법을 기록합니다. (큰 틀에서의 이론을 먼저 살펴보고 생성 방법에 대해서 알아보겠습니다.) 먼저 Java 기반의 Ap

wildeveloperetrain.tistory.com

* 해당 포스팅의 방법으로 생성한 .jar 을 실행하는 과정에서 발생한 오류와 그 해결 방법을 찾아 다시 포스팅합니다.

 

 

 

No auto configuration classes found in META-INF/spring.factories

프로젝트를 배포하기 위해 위 방법으로 .jar 파일을 생성하고 실행하였으나 에러가 발생하였습니다.

 

ERROR org.springframework.boot.SpringApplication - Application run failed java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories

 

META-INF 폴더 내부에 spring.factories 파일을 찾을 수 없다고 합니다.

 

 

MANIFEST.MF

해서 위 포스팅 과정을 살펴보니 빌드 과정에서 META-INF 폴더 내부에 spring.factories 파일이 아닌 MANIFEST.MF 파일을 생성하는 것을 볼 수 있었습니다.

 

 

* 현재 해결 방안은 찾았지만 MANIFEST.MF 파일과 spring.factories 파일의 차이 및 정확한 원인에 대해서는 모르기 때문에 해당 오류의 원인에 대해서 좀 더 찾아볼 필요가 있을 것 같습니다.

아마 maven을 통해 build 하는 것과 intellij를 통해 빌드하는 방법에서 차이가 발생하는 것 같습니다.

 

 

maven package

Maven의 package를 통해 빌드에 성공하여 '프로젝트-0.0.1-SNAPSHOT.jar', '프로젝트-0.0.1-SNAPSHOT.jar.original' 파일을 생성하였습니다.

 

 

프로젝트 실행 성공

maven package를 통해 빌드된 .jar 파일을 서버에서 실행하였고 성공적으로 동작하였습니다.