您的位置:首页 > 其它

gradle依赖排除

2015-08-18 09:58 836 查看
gradle中排除依赖有很多种方式,比如:
在configuration中进行全局依赖排除:
configurations {
compile.exclude group: 'org.gradle.test.excludes', module: 'reports'
}

也可以在某个依赖内部进行细粒度的依赖排除:
dependencies {
compile("org.gradle.test.excludes:api:1.0"){
exclude module: 'shared'
}
}

排出某个依赖所有的传递依赖:
dependencies {
compile("org.gradle.test.excludes:api:1.0"){
    transitive = false

}
}

但是做细粒度排除时有一个问题,如上写法,在发布到maven私服上时,依赖并没有被过滤掉。
仔细尝试过gradle文档中说过的所有排除方式之后,发现,全局依赖可以在发布到maven私服的时候给每一项依赖都加上过滤。
针对单项依赖进行的细粒度依赖排除如下写法也可以加上过滤:
compile ("com.alibaba:dubbo:${dubboVersion}") {
exclude group:'org.springframework', module: 'spring'
}
在这里,用的上传发布的工具是gradle官方推荐的工具:
deployerJars "org.apache.maven.wagon:wagon-http:2.2"
其内部存在一些bug。目前推荐使用上述写法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: