如何使依赖项使用JVM语言中自己的传递性依赖项

时间:2018-08-30 07:26:28

标签: java scala maven sbt sbt-assembly

假设pom.xmlbuild.sbt中有两个库,分别是A和B。假设它们都依赖于C,但是A依赖于版本1,B依赖于版本2。

我的理解是,如果这些版本不兼容,除了尝试对A或B进行升级/降级以使其依赖于相同的C版本之外,几乎没有其他可以做的事情。

Q1:肯定有人发明了一种编译A&C.1的方法,使A调用C.1,并编译B&C.2,使B调用C.2吗?

Q2:这是固有的困难吗,因为Java是从字节码而不是源代码构建的?问题3:那么这样的工具将具有解析和修改字节码的功能,而不仅仅是Java / Scala代码?

Q4:是否有本机Java方式(而不是使用一些独立的工具)?

Q5:是否有其他语言/编译器没有此问题? (即,使A呼叫C.1和B呼叫C.2的功能是本机的)

0 个答案:

没有答案