일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 자바
- SQL
- 코드 이해하기
- 그딴건없었다
- Python
- 깃허브
- 값 가져오기
- jstl
- 웹 퍼블리싱
- 문서객체모델
- 로그인 기능
- 헬생아
- 코드 시각화
- C언어
- react-three-fiber
- 전처리도구
- 렌파이
- java
- jsp
- spring
- nvl함수
- 1인개발
- CSS
- SpringBoot
- MySQL
- 코드 가시화
- 쿼리 오류
- REACT
- 타입 오류
- 자바스크립트
- Today
- Total
This is it. it's IT.
스프링 의존성 dependency - scope 별 의미 본문
dependency에서 scope의 의미는? 말그대로 '범위'라는 뜻.
해당 디펜던시의 범위를 알려주는 부분인 듯 하다.
pom.xml에서 사용한다.
참고로 pom은 project object model의 약자로 구글에 따르면
A Project Object Model or POM is the fundamental unit of work in Maven. It is an XML file that contains information about the project and configuration details used by Maven to build the project. It contains default values for most projects.
라고 한다.
<scope>test</scope> 이런 식으로 쓴다.
compile : 기본 값, 모든 클래스 패스에서 사용 가능
provided: 컴파일과 유사하나 패키지에는 포함되지 않는다. 컨테이너나 JDK에서 제공. ex) Servlet API for web apps
runtime: 컴파일러가 아닌 런타임 시에만 사용됨
test: 테스트 단계에서만 유용함 ex) Junit
system: provided와 유사하나 개발자가 직접 JAR파일을 제공해야 함. 저장소에서 지정한 dependency를 찾지 않는다.
의존성 분석 순서
spring이 의존성을 분석하는 순서는 이러하다.
1. 로컬 저장소에서 의존성 확인
2. 원격 저장로 리스트에서 의존성 확인
3. 1과 2가 실패하면 의존성 에러 보고
의존성 선언 항목
1. <groupId>: 부분적인 프로젝트나 조직에서의 라이브러리 집합을 식별하기 위해 제공
2. <artifactId>: 프로젝트의 실제 이름으로 groupId와 합쳐져 프로젝트 식별에 쓰임
3. <version>: 선언한 의존성 artifact의 버전으로 프로젝트 내에서 사용하는 artifact의 일관성을 추구할 수 있음