gradle 4

Understanding Gradle #04 – Tasks

오늘은 Gradle Build 를 수행하기 위해 필요한 Task 에 대해서 알아본다. Tasks of a plain/empty project 현재 build.gradle 파일이 비어있는 상태에서 ./gradlew :app:task 명령어를 통해 현재 실행할 수 있는 Gradle Task 의 리스트를 살펴보면 여러 종류의 help task 들을 확인할 수 있다. 아무런 변경이 없으면 코어 Gradle 은 빌드 분석을 위한 이러한 Task 만을 제공한다. > Task :app:tasks ------------------------------------------------------------ Tasks runnable from project ':app' -----------------------------..

Understanding Gradle #03 – Plugins

이번 영상에서는 gradle 의 plugin 에 대해서 다룬다. gradle 은 강력하고 다양한 core 시스템으로 구성되는데, 그 중에 가장 중요한 것 중 하나는 plugin 이다. gradle 에서 plugin 은 대충 3가지 종류로 구분할 수 있다. Core Plugin : Gradle 프로그램에 내장되어 있고, 간단한 id 를 명시하는 것만으로 적용할 수 있다. ex) id("java-libraray") Commnunity Plugin : 보통 Gradle Plugin Portal 에 저장되어 있다. Commnunity Plugin 은 qualified id 와 version 명시를 통해 적용할 수 있다. Convention Plugin : 로컬에서 직접 작성해서 사용하는 플러그인. plugins..

Understanding Gradle #02 – The Build Files

빌드 파일들은 gradle 를 통한 빌드에서 가장 핵심적인 구성요소들을 담고 있는 파일이다. build.gradle (또는 코틀린 사용시 build.gradle.kts) 파일이 빌드 파일이다. 최초에 프로젝트를 3가지 서브 프로젝트(app, data-model, business-logic)로 구성했다. 그러나 아직 각 서브 프로젝트들은 비어있는 상태이다. 각 서브 프로젝트에 빌드 파일을 추가하여 서브 프로젝트들을 의미있게 만들어 줄 수 있다. 서브 프로젝트의 빌드 파일에서 구성해야할 것들은 3가지 이다. Give meaning to a subproject - apply a plugin 첫번째는 plugins 블록에 설정하는 plugin 들이다. plugin 을 적용함으로써 서브 프로젝트에 구조와 의미를 ..

Understanding Gradle #01 – The Settings File

settings.gradle : 그레이들 프로젝트의 entry point settings.gradle 파일에는 다음과 같은 내용이 작성될 수 있다. rootProject.name 속성에 프로젝트의 이름을 설정 ex) rootProject.name = "GradleStudy" 빌드 대상이 되는 컴포넌트의 의존성을 검색할 수 있는 위치를 설정 프로젝트 구조 settings.gradle pluginManagement { // gradle 확장 플러그인 다운로드를 위한 저장소 위치 설정 repositories { google() mavenCentral() gradlePluginPortal() } includeBuild("../my-build-logic") // 로컬에서 직접 정의한 플러그인 } dependenc..