Java/Spring

[Springboot] 1. build.gradle 작성하기

jwKim96 2019. 12. 22. 21:24

 

Springboot에서는 Maven대신에 Gradle이라는 빌드&의존성관리 툴을 사용한다.

 

이전에 Maven을 사용하Spring에서는 pom.xml에서 주로 의존성 및 빌드 정보를 관리하였다면, 

 

Gradle을 사용하는 Springboot는 build.gradle이라는 파일에서 의존성 및 빌드 정보들을 관리한다.

 

buildscript {
    ext {
        springBootVersion = '2.1.9.RELEASE'
    }
    repositories {
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

/*  이 gradle파일에서 build에 필요한 정보들을 선언? 추가? 하는부분인것같음.
    ext는 전역변수 설정
    repository는 build에 필요한것들을 가져올 repository와
    그 의존성을 설정하는dependencies로 이루이진 것 같음
    위 부분은 pringboot gradle plugin 2.1.7버전 을 사용할 수 있도록 설정하는 부분인것 같음  */

apply plugin : 'java'
apply plugin : 'eclipse'
apply plugin : 'org.springframework.boot'
apply plugin : 'io.spring.dependency-management'
/*  io.spring.dependency-management는 스프링 부트의 의존성을 관리하는 플러그인(필수!)
    위 4개는 sprnig boot 사용에 필수적인 플러그인이라, 항상 추가해야함.    */

group 'com.jwkim.springboot'
version '1.0-SNAPSHOT-'+new Date().format("yyyyMMddHHmmss")
sourceCompatibility = 1.8

repositories {
    mavenCentral()
    jcenter()
}
/*  의존성(라이브러리)들을 어디서 받을지 정하는구문.
    mavenCentral을 많이 이용하긴 하지만, 라이브러리 업로드시 많은 과정과 설정이 필요해서
    이러한 문제점을 개선한 jcenter를 많이 이용함. jcenter에 업로드하면 mavenCentral에도
    업로드 할 수 있도록 자동화를 할 수 있어서 jcenter로 사용자들이 많이 옮겨가는중    */


dependencies {
    compile('org.springframework.boot:spring-boot-starter-web')
    testCompile('org.springframework.boot:spring-boot-starter-test:')
}
/*  여기서는 개발에 필요한 의존성을 선언하는부분임.
    버전을 명시하지 않아야, 위에서 작성한 springBootVersion을 따라간다.  */

 

위는 Springboot를 사용하기위한 build.gradle 예제이다.