我正在为我的服务创建超级罐子的想法,但我担心包含具有冲突依赖性的罐子。当jar A依赖于slf4j-1.0和jar B取决于slf4j-2.0时会发生什么?1.0和2.0之间有重大变化?当这些罐子都包含在uber jar中时,我是否必须按命名空间编写特定的过滤器,或者在阴影过程中发生了什么事情,这些过滤器命名为jar?
感谢您的帮助
答案 0 :(得分:1)
你担心是对的。你最终会遇到冲突(一个同事称之为“dll hell hell hell all'”)有时你可以在jar文件的同一目录中拥有v1和v2中的类。
您可以轻松地排除一个或另一个版本,但如果您的依赖项同时需要它们,则您将面临以下选项:
无论你做什么,gradle依赖都很有帮助。