我有一个项目有N个依赖项,它们都依赖于某个库A(比如commons-logging),我想使用其他一些库B(比如jcl-over-slf4j,它被称为替代commons-logging)作为该库的替代品,以便在每种情况下始终使用B,并且A根本不会包含在项目中。
我知道处理这种情况的唯一方法是将B添加为显式依赖关系,然后为每个N库添加一个排除说不要引入A.这似乎违背了声明的精神,而不是如果A是常用的东西(比如公共记录),那就提到它是疯狂的重复。有没有办法说,“每当有任何东西需要A作为传递依赖时,给它B代替”?
答案 0 :(得分:2)
SLF4J常见问题解答中讨论了replacing commons-logging with jcl-over-slf4j的问题。我个人觉得替代3),即空文物,非常吸引人。