我对maven的类加载顺序有疑问。
我知道,因为maven版本2.0.9的类加载已经确定了,所以使用pom中的顺序。我不清楚传递依赖性。 maven是否首先加载所有顶级依赖项,然后加载传递依赖项。或者使用所有传递依赖项加载顶级依赖项,然后加载下一个顶级依赖项。
我知道在一个完全正确的maven设置中,顺序没有问题但我在依赖项中有一些重复的类,我想知道使用了哪一个。排除传递依赖是没有选择的,因为并非所有类都包含在两个jar中。
例如: 我的项目有三个依赖项A,B和C.A对C的传递依赖。哪个是加载依赖项的maven顺序?
POM:
案例A:
A - > B - > C
案例B: A - > (传递依赖性)C - > B - > ç
谢谢
答案 0 :(得分:0)
我已使用调试选项-X
检查了类路径,并且类路径对应于案例b。
第一个依赖项(A)在其路径上加载了它的传递依赖项(C)。然后加载下一个pom条目(B)。
我希望其他用户可以验证我的解决方案。