[컴] buildscript.repositories 와 repositories 의 차이

 

build gradle / repository / repositories 차이

buildscript.repositoriesrepositories 의 차이

repository 는 dendency 를 어디서 가져올 것인가를 정해주는 것으로 보면 된다.

그래서 buildscript안의 repository 는 buildscript안의 dependency들을 가져오기 위해 쓰이고, root 에 있는 repositories는 project 를 build 하는데 필요한 dependency 를 가져오는 데 쓰인다.

그러면 buildscript 안의 dependency 는 뭐가 다를까?

그것은 buildscript 가 필요한 부분, 즉, gradle 이 사용할 class 등을 정의하게 된다. ref. 3 의 예제를 보면 이해가 쉬울 수 있다.

import org.apache.commons.codec.binary.Base64

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath group: 'commons-codec', name: 'commons-codec', version: '1.2'
    }
}

tasks.register('encode') {
    doLast {
        def byte[] encodedString = new Base64().encode('hello world\n'.getBytes())
        println new String(encodedString)
    }
}

``` Output of gradle -q encode

gradle -q encode aGVsbG8gd29yb ``

Reference

  1. build - Gradle buildscript dependencies - Stack Overflow
  2. build.gradle buildscript dependencies vs. dependencies? - Stack Overflow
  3. Build Script Basics

댓글 없음:

댓글 쓰기