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 예제이다.