java - 使 maven child 依赖于不同版本的库
问题描述
项目 A 和 B 都依赖于项目 C。
项目 C 依赖于项目 D,指定为
<dependency>
<groupId>some.group</groupId>
<artifactId>D</artifactId>
<version>2.0</version>
</dependency>
在项目 C 的 pom.xml 中
但是,项目 B 不适用于依赖于 D 版本 2.0 的项目 C
但 A 仅适用于项目 C,具体取决于 D 版本 2.0
我可以更改项目 B 的 pom.xml 中的某些内容以使其使用 D 版本 1.0 构建 C 吗?
解决方案
当然。使用<exclusions>
. 祝你好运!
B的pom.xml
<dependency>
<groupId>some.group</groupId>
<artifactId>C</artifactId>
<version>${C.version}</version>
<exclusions>
<exclusion>
<groupId>some.group</groupId>
<artifactId>D</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>some.group</groupId>
<artifactId>D</artifactId>
<version>1.0</version>
</dependency>
推荐阅读
- python - Alembic 忽略特定表
- javascript - 如何使用 python 和 javascript 定位文本并将其写入 textarea?
- flutter - (Flutter) 错误:查找已停用小部件的祖先是不安全的。(使用 IFrameElement)
- oracle - Oracle 12c Forms 中是否有用于包装菜单项的属性?
- sql - 计算两个时间记录之间的差异
- c# - 有什么方法可以使 ITicketStore 作用域?
- ascii - 反斜杠 n `\n` 真的是换行符,但被视为换行符吗?
- php - 我在打开时从错误中创建文件夹的模板
- apache-kafka - Kafka 代理从集群中移除且重新分配失败后降低主题复制因子
- postgresql - 为什么在同一个查询中,hash索引被忽略而使用btree索引