gpt4 book ai didi

java - Gradle 从依赖子项目中排除组

转载 作者:行者123 更新时间:2023-11-30 07:43:05 24 4
gpt4 key购买 nike

给定一个 gradle 项目 A 依赖于项目 B(没有共同的父级)

compile project('B'){
exclude group: 'org.slf4j'
}

我们如何从我们依赖的项目中排除传递依赖组?(这段脚本将失败,因为 compile projet( ..))

还有更一般的问题:是否有一种优雅的方法可以将特定组从所有依赖项中排除,除非它是第一级依赖项?

例如,我们可能有一堆库,每个库都可以声明其日志记录环境,但通过排除所有已知的 slf4j 组、其实现并声明特定版本,我们将确保我们不会'没有任何版本冲突,并且会在模块级别控制版本。

最佳答案

这是 Gradle 文档中的一个示例,说明如何在项目级别排除传递依赖项(我猜这就是您所说的“除非它是第一级依赖项”的意思):

configurations {
compile.exclude module: 'commons'
all*.exclude group: 'org.gradle.test.excludes', module: 'reports'
}

参见52.4.7。排除传递依赖 here

您可以直接使用所需版本指定依赖项,也可以使用强制版本 resolution strategy

关于java - Gradle 从依赖子项目中排除组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34382657/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com