프로젝트/[ 브로 팬 페이지 ]

[ 브로 ] 3. build.gradle 작성하기

브로코기 2024. 1. 8. 14:47

이 중에 Gradle 관련 기본 구조로 간추리면 다음과 같다.

├─ gradle
│       └─ wrapper
│       ├─ gradle-wrapper.jar
│       └─ gradle-wrapper.properties
├─ gradlew
├─ gradlew.bat
├─ build.gradle
└─ settings.gradle

  • gradlew
    리눅스 또는 맥OS용 실행 쉘 스크립트 파일이다.
  • gradlew.bat
    윈도우용 실행 배치 스크립트 파일이다.
  • gradle-wrapper.jar
    JAR 형식으로 압축된 Wrapper 파일이다. gradlew나 gradlew.bat 파일이 프로젝트 안에 설치되는 이 파일을 사용하여 Gradle task를 실행한다.
  • gradle-wrapper.properties
    Gradle Wrapper 설정 정보 파일이다. Wrapper의 버전 등을 설정할 수 있다.
  • build.gradle
    프로젝트의 라이브러리 의존성, 플러그인, 라이브러리 저장소 등을 설정할 수 있는 빌드 스크립트 파일이다.
  • settings.gradle프로젝트의 구성 정보 파일이다. 멀티 프로젝트를 구성하여 프로젝트를 모듈화할 경우, 하위 프로젝트의 구성을 설정할 수 있다.

 

 

우리는 build.gradle 파일을 커스텀 하면 되는데...

plugins {
	id 'java'
	id 'org.springframework.boot' version '3.2.1'
	id 'io.spring.dependency-management' version '1.1.4'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'

java {
	sourceCompatibility = '17'
}

repositories {
	mavenCentral() // maven 중앙저장소
}

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-web'
	implementation 'org.springframework.boot:spring-boot-starter-security'
	implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
	testImplementation 'org.springframework.security:spring-security-test'
	compileOnly 'org.projectlombok:lombok:1.18.12'
	runtimeOnly 'org.postgresql:postgresql'
	annotationProcessor 'org.projectlombok:lombok:1.18.12'
}

tasks.named('test') {
	useJUnitPlatform()
}

 

초기 형태 !! 하나씩 추가할 예정 ~