假设我需要(它需要)在我的 Java 项目中使用fizz-1.0.jar和。buzz-2.3.2.jar现在,fizz-1.0.jar取决于foo-0.1.35.jar和buzz-2.3.2.jar取决于foo-4.2.17.jar。
foo-0.1.35.jar包含一个Widget像这样的类:
public class Widget {
public int doSomething(int x) {
return x++;
}
}
foo-4.2.17.jar包含一个经过大量修改的版本Widget:
public class Widget {
public Meh makeStuff() {
return new Meh();
}
}
不幸的是,两者都fizz-1.0.jar大量buzz-2.3.2.jar使用了Widget.
我不能盲目地将 的两个版本都添加foo-x.y.z.jar到类路径中,因为无论哪个先Widget加载,都只适用于fizz-1.0.jar或buzz-2.3.2.jar。
我在这里有什么选择?请记住,我必须同时拥有fizz-1.0.jar和buzz-2.3.2.jar,并且必须满足它们的所有传递依赖关系。