Sbt 如何解决两个具有完全相同路径的依赖类&;名称

Sbt 如何解决两个具有完全相同路径的依赖类&;名称,sbt,dependency-management,Sbt,Dependency Management,我正在使用SBT来管理依赖关系。我在我的项目中添加了两个罐子AAA和BBB。但是,AAA和BBB都有一个名称和路径完全相同的类,比如com.ccc.ddd.eee.fff.foo.java 现在,编译器没有抱怨。然而,当我导入foo.java时,它总是来自jaraaa,尽管不幸的是,我希望它来自jarbbb 关于如何解决这个难题有什么建议吗?先谢谢你 编辑: 我使用的是libraryDependencies+=,托管依赖项。你没有说这两个罐子是如何添加的;查看您的build.sbt会很有帮助 也

我正在使用SBT来管理依赖关系。我在我的项目中添加了两个罐子AAA和BBB。但是,AAA和BBB都有一个名称和路径完全相同的类,比如com.ccc.ddd.eee.fff.foo.java

现在,编译器没有抱怨。然而,当我导入foo.java时,它总是来自jaraaa,尽管不幸的是,我希望它来自jarbbb

关于如何解决这个难题有什么建议吗?先谢谢你

编辑:
我使用的是libraryDependencies+=,托管依赖项。

你没有说这两个罐子是如何添加的;查看您的
build.sbt
会很有帮助

也就是说,类路径受列出依赖项的顺序的影响。如果您使用的是非托管依赖项,并且希望找到类的特定版本,请首先列出该库依赖项

如果将它们指定为托管依赖项,则更常见的做法是:

libraryDependencies += "foo" % "bar" % "x.y.z" exclude("org.domain", "AAA")
或:

ivyXML:=

这里有更多信息:

您没有说这两个罐子是如何添加的;查看您的
build.sbt
会很有帮助

也就是说,类路径受列出依赖项的顺序的影响。如果您使用的是非托管依赖项,并且希望找到类的特定版本,请首先列出该库依赖项

如果将它们指定为托管依赖项,则更常见的做法是:

libraryDependencies += "foo" % "bar" % "x.y.z" exclude("org.domain", "AAA")
或:

ivyXML:=
这里有更多信息: