2014-04-28 39 views
0

请考虑以下依赖战争中的应用。Maven的依赖管理:传递Vs的直接依赖关系

War A --> Jar A --> jar B 

战争A只添加了Jar的依赖。获取jar B作为传递依赖项。 但是,让我们说B中的某些变化,那么我们需要用新版本的B来构建A。这是正确的做法吗?每个时间B的变化,A的POM需求回暖B. 一旦开战A的最新变化,并指定A的直接依赖甲乙双方或只是一个?

是有一些规则,它说,像我们应该理想地宣布只有那些我们直接使用的API JAR的直接依赖。

在上述情况下,有从罐中乙java类这是越来越从战争A.

叫请我的理解帮助。

+2

与声明直接依赖关系的问题在于,你很快就会发现你的POM具有依赖淹没。通常,任何版本更改都是向后兼容的。因此,B中的更新并不一定意味着您必须更新A。 – adarshr

回答

0

一般情况下,最好把Maven的约定,并允许它来解决传递依赖,这样你就不会漩涡成依赖地狱!
如果你想测试一个变化,你可以用于测试目的,添加一个直接依赖。

保持简单。允许maven管理这个。

我希望这会有所帮助。