maven中不同分类器的不同依赖关系

时间:2012-06-14 11:18:05

标签: maven

我有一个带有几个依赖项的Maven工件。我想像平常一样发布内置在jar中的模块,但我也想使用maven shade插件发布一个带有依赖关系的jar。这个超级罐有不同的分类器。

这一切都运行正常,除非有人使用其分类器拉入超级jar,他们仍然获得原始的所有依赖,这是他们不需要的。

如何根据分类器排除某些依赖项?我尝试过使用配置文件,但我无法确定如何根据工件的分类器激活配置文件。

我知道我可以将超级罐作为一个完整的新工件进行排除,但这有点混乱,我希望有更好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

尝试optional依赖。您必须将uber jar工件的所有依赖项声明为true。

此外,您可能希望创建另一个工件,而不是使用分类器。你可以从mockito中调整它。请参阅mockito-core vs mockito-all