为什么我们需要在gradle的buildscript任务中使用存储库/依赖项

时间:2015-03-12 21:06:06

标签: gradle clojure

在帖子Using gradle/clojuresq to build clojure和答案https://stackoverflow.com/a/29018574/260127中,存在(或似乎)存储库和依赖项的重复。

这是为什么?为什么我们需要使用相同设置的另一套?

buildscript { <- first 
    repositories { 
        maven { url "http://clojars.org/repo" } 
        mavenCentral()
    }
    dependencies {
        classpath "clojuresque:clojuresque:1.7.0" 
    }
}

...

-> Same set again!

repositories {
    maven { url "http://clojars.org/repo" }
    mavenCentral()
}

dependencies {
    compile "org.clojure:clojure:1.6.0"
}

...

1 个答案:

答案 0 :(得分:2)

第一个是构建脚本本身所需的依赖项。在这种情况下,您声明的依赖项是clojuresque,它包含Clojure Gradle插件(apply plugin: 'clojure')。第二个是项目的依赖项,在本例中是Clojure库本身。

简单地说,Gradle需要第一个,代码需要第二个。