MSA구조로 한 프로젝트 안에 여러개의 서브 프로젝트들이 들어있는 구조로 프로젝트를 만들어보다보니 지속적으로
Unable to determine Dialect without JDBC metadata 내지 (please set 'jakarta.persistence.jdbc.url' for common cases or 'hibernate.dialect' when a custom Dialect implementation must be provided) 와 같은 오류 메세지들이 뜨며 로컬 서버가 켜지지 않는 경우가 있다.
전반적으로 JPA, JDBC 설정이 안되어있으니 해라! 라는 느낌이지만 같은 설정으로 실행이 수월한 다른 프로젝트들이 있다면 접속정보 설정 및 의존성 문제는 배제하고 생각할 수 있다.
그렇다면 설정한 데이터를 읽지 못하기 때문에 발생하는 오류인 것 같아서 내장 톰켓 설정(IntelliJ 기준 Run Configuration)을 뜯어봤다.
유일한 차이점은 working directory이다.
JDBC 설정정보는 application.yml(application.properties) 혹은 persistence.xml에 들어있으니 working directory 기준으로 해당 데이터를 읽어 프로젝트를 실행할텐데 해당 디렉토리가 루트로 들어가 있으니 원하는 설정정보가 아닌 깡통 프로젝트에 대한 정보를 읽어서 실행하려고 했을 것이다.
따라서 working directory를 올바르게 넣으면 정상적으로 서버가 실행될 것이다.
자꾸 까먹어서 개인적으로 정리하게 되었다....
'공부 > Spring' 카테고리의 다른 글
[SpringBoot] MSA 프로젝트 Swagger 통합기 (2) | 2024.10.24 |
---|---|
[SpringBoot] Swagger UI 접속 시 java.lang.NoSuchMethodError 발생할 경우 대처 방법 (1) | 2024.10.10 |
[Spring] Maven? Gradle? (0) | 2022.02.23 |
[Spring] Spring vs SpringBoot (0) | 2022.02.22 |
[Spring] @Configuration과 @Bean Annotation을 이용한 Bean 등록 (1) | 2022.02.21 |