일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
Tags
- 백준 1240번 노드사이의 거리
- 백준 2206번 벽 부수고 이동하기 G3
- Stack
- StringTokenizer
- 프로그래머스 java
- dp
- HashSet
- 백준 1600번 말이 되고픈 원숭이
- 백준 2660번 회장뽑기 G5
- kotlin
- replace()
- toUpperCase
- 백준 1967번 트리의 지름 G4 자바
- 백준 8979번 올림픽 S5 자바
- 프로그래머스 자바
- 전위 중위 후위
- 코틀린기초
- StringBuilder
- HashMap
- 프로그래머스
- 포인트 컷
- map
- 백준 11725번 트리의 부모 찾기
- 백준 2589번 보물섬 G5
- 서브모듈 yml
- append
- hash
- 스프링 다중프로필
- 스프링 on-profile
- Java
Archives
- Today
- Total
말하는 컴공감자의 텃밭
스프링 프로젝트 트러블 슈팅 : on-profile 설정 본문
728x90
config:
activate:
on-profile: local
로컬에서 개발할거야 라고 명시했는데,, 왜 안되는거니
***************************
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 suitable jdbc url
Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'jwtFilter' defined in file
Error creating bean with name 'jwtFilter' defined in file
Error creating bean with name 'tokenProvider': Injection of autowired dependencies failed
Could not resolve placeholder 'jwt.secret-key' in value "${jwt.secret-key}"
위 같은 오류들을 마주했다면 프로필 설정 후 활성화가 되었는지 확인을 해야한다.
없다면 프로필 속성은 적용되지 않는다.
백엔드 코드를 병합하고 서버를 돌리는데 웬걸 아예 application.yml 속성들이 안들어가는 듯한 느낌을 받았다.
이유는 돌고돌아 프로필 때문이었다.
application.yml 에 profile 설정이 들어가는 경우
인텔리제이 실행 > 구성편집 > 활성화된 프로파일에 'local' 혹은 'dev' 를 적어 명시해주자..
나는 어플리케이션 프로퍼티 yml 파일에 JWT관련 설정이 존재했는데 profile 부분을 인식 안하니까
Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'jwtFilter' defined in file [C:\Users\khv97\Desktop\현빈 레포
이런식으로JWT 자동 주입이 안돼! 라는 에러를 뱉었다.
이거때문에 낑낑거렸는데 웬걸.. profile 문제였다니...
---
spring:
config:
activate:
on-profile: local
datasource:
url: DB주소주소주소주소주소
username: 이름이름
password: 비번비번
---
spring:
config:
activate:
on-profile: dev
datasource:
url: DB주소주소주소주소주소
username: 이름이름
password: 비번비번
---
이런식으로 profile을 나누어 로컬 개발과, 서버 개발을 나눌 수 있다.
profile을 사용하는 이유는 개발 프로젝트 진행하면서 환경을 다르게 주어야할때가 존재하게 된다.
로컬에서 개발하는경우와 테스트할 때도 있을거고, 운영중인 서버에서의 접근 등 세팅을 다르게 해줘야하는데
이같이 프로필을 이용하면 편할듯 싶다.
728x90
Comments