如何配置gradle仅为某些依赖关系组使用本地存储库?

时间:2011-08-10 18:59:19

标签: java ivy gradle

使用gradle dependency docs,我们有一个带有这样的代码段的build.gradle。

repositories {
    mavenCentral()
    ivy {
        name = 'localRepo'
        artifactPattern "http://localRepo.com/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"
    }
}

dependencies {
    compile group: 'localRepo', name: 'my-private-library', version: '2.5'
}

此设置确实可以正确下载所有内容,但我想调整它以便组localRepo中的内容仅尝试从常春藤存储库中提取,而localRepo仅用于组localRepo。 localRepo只保存私有罐子,所以我们不希望它被用作第一个回购,我们不想花很长时间来查询mavenCentral对于不存在的罐子。

基本上我想在依赖中使用特定的回购或者本地常春藤回购仅用于特定的组。有一个简单的方法吗?

3 个答案:

答案 0 :(得分:5)

不是你想要的,但是我们设置了我们的存储库,以便开发人员从本地私有存储库中获取所有依赖关系,并且本地私有存储库缓存maven中央存储库。这是更快的,因为依赖关系只能由第一个开发人员从maven中心拉一次以访问它们,并且还允许您查看公司中正在使用的工件。 Nexusartifactory我确信所有其他存储库都可以。

答案 1 :(得分:1)

gradle mailing list上看到类似的内容,并且当前可用的最佳选项确实转向artifcatory并管理您自己的共享存储库。

答案 2 :(得分:1)

目前无法实现,但这是一个开放式请求http://issues.gradle.org/browse/GRADLE-1066