Notice
Recent Posts
Recent Comments
05-17 21:28
«   2024/05   »
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
Archives
Today
Total
관리 메뉴

Byeol Lo

build.gradlew 본문

BackEnd/Spring

build.gradlew

알 수 없는 사용자 2022. 8. 24. 12:53

build.gradle파일은 의존관계에 대한 설정을 조작할 수 있는 파일이다. 여기선 주기능으로 외부 라이브러리들을 가져오게 할 수 있는 기능을 백엔드 개발자에게 권한을 주게 한다. Gradle은 의존관계가 있는 라이브러리들을 함께 다운로드 하는데, 대표적으로 스프링부트 라이브러리들은 다음과 같은 의존관계가 있다. (외부 라이브러리들을 끌어온 목록들은 intellij의 디렉토리 구조에서 External Libraries에서 볼 수 있다.)

간단한 라이브러리 의존관계

spring-boot-starter-web 

ㄴ spring-boot-starter-tomcat : 톰캣 ( 웹서버 )

ㄴ spring-webmvc : 스프링 웹 mvc

spring-boot-starter-thymeleaf : 타임리프 템플릿 엔진 (View)

spring-boot-starter : 스프링부트 + 스프링코어 + 로깅

ㄴ spring-boot

        ㄴ spring-core

ㄴ spring-boot-starter-logging : 서버 로깅에 대한 것

        ㄴ logback

        ㄴ slf4j

spring-boot-starter-test : 테스트 라이브러리

ㄴ junit : 테스트 프레임워크 ( 최신은 ver.5 이상 )

ㄴ mockito : 모키토 라이브러리

ㄴ assertj : 테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리

ㄴ spring-test : 스프링 통합 테스트 지원

About build.gradle 파일

group : 백엔드 그룹 이름이나 처음 springboot를 다운받을때 설정했던 이름

version : 우리 웹서버가 현재 어느 버전인지

sourceCompatibility : 자바 버전 (targetCombatibility : class 파일의 호환 JVM 버전)

repositories - mavenCentral() : 소스파일들을 다운받을 수 있게 경로(링크)를 설정해서 다운받는 실행

dependencies : implementation을 통해 외부 라이브러리들을 들고 올 수 있음. 가져온 의존성 목록들을 나열한 코드블럭

 

Configuration 목록

compileOnly : 컴파일 타임에만 의존성을 주입

runtimeOnly : 런타임에만 의존성을 주입

implementation : 컴파일 타임과 런타임에 모두 쓰이는 의존성을 주입

annotationProcessor : 어노테이션 프로세서로써 컴파일 시 사용되는 의존성을 주입

testImplementation : 테스트 시에만 의존성을 주입

Main을 실행할때

 

test를 실행할때

의존성을 그룹명:이름:버전 순으로 명시해서 주입가능하다. 버전명은 optional 이기 때문에 꼭 명시하지 않아도 상관없다.

'BackEnd > Spring' 카테고리의 다른 글

Spring IOC(Inversion of Control), DI(Dependency Injection)  (0) 2022.08.30
Spring - MVC와 템플릿 엔진  (0) 2022.08.28
Spring - static 폴더  (0) 2022.08.24
Spring 시작하기  (0) 2022.08.21
Comments