Spring profile(-local.yml) 설정
use. InteliJ/Spring/Maven
git에서 프로젝트 소스코드를 받고 maven clean install, build 까지는 잘 됐다.
디버깅을 하려고 했더니 갑자기 요론 깜찍한 에러가 떠버린거다😱...!
*************************** APPLICATION FAILED TO START ***************************
Description: Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action:
Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the classpath. If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).
*****************************************************************************************************
구글링을 열심히~ 해봤더니 "Failed to configure a DataSource" 오류는 설정 파일(application.yml)에 DB 를 연결한 부분 이라는 얘기들이었다. 설정파일을 이리저리 열심히 봤지만, 틀린 부분은 보이지 않았고😥😥. 결국 백엔드를 잘 아는 선임님께 SOS를 쳤고 이리 저리 고민하시던 선임님은 vm option을 체크해보라는 얘기를 해주셨다.
결론적으로는,
프로젝트 소스코드는 각자 개인 로컬에서 개발하기 위한 application-local.yml과 배포를 위한 application.yml을 사용하는 부분에서 -local을 읽지 못해 생긴 문제였다. git에서 로컬 설정 파일인 application-local.yml을 공유했기 때문에, -local에 맞게 vm-option을 수정 할 필요가 있었다.
Configuration 할때 우측 상단의 Modify options > Java > Add VM options 를 눌러 VM option 을 활성화 한 후 -Dspring.profiles.active='' 를 입력한다. profile이 local이라면 '' 위치에 local를 작성하면 되고 이외에도 dev나 prod같이 활성화 할 profile명을 적어주면 된다.
처음 프로젝트 설정할때 해결했던 문제를, 오늘 새로 Configuration 구성하다가 또 까먹어버렸다 🙄 세번째에는 안까먹고 디버그하기 전에 설정할 수 있길ㅎㅎ
참고: https://www.lesstif.com/spring/spring-profile-deploy-18220309.html
'Web > Backend' 카테고리의 다른 글
DAO(Repository), DTO, Entity 란? (0) | 2021.10.06 |
---|---|
MVC 패턴이란? (0) | 2021.09.30 |