Playframework 2.3.9依赖覆盖



作为Play 2.3, Play作为SBT插件添加在我的Build.scala中,如下所示:

Project("root", file(".")).enablePlugins(play.PlayScala)

还要看一下文档。

我需要更新一个特定的依赖,即Fluentlenium (Play 2.3.9仍然使用0.9.3):

"org.fluentlenium" % "fluentlenium-core" % "0.10.3"

如何将旧版本替换为新版本?只需将库添加到libraryDependencies中,就可以在类路径中留下两个版本。


编辑:在深入挖掘之后,似乎SBT 13.8附带的dependencyOverrides(新?)功能可能是一个解决方案:

覆盖版本。但也可以从相同的文档中查看冲突管理。

这样你可以覆盖单个依赖,这意味着你必须手动覆盖每个传递依赖。

简单地将库添加到libraryDependencies中,在类路径中留下两个版本。

你确定吗?如果在相同的配置中有多个版本,那么sbt (Ivy)应该驱逐旧的版本。

在大多数情况下

libraryDependencies += "org.fluentlenium" % "fluentlenium-core" % "0.10.3"

应该没问题,假定是0.9。X是与0.10.x兼容的二进制文件。如果您想确保它在传递依赖解析期间被覆盖,dependencyOverrides可能是您的选择:

dependencyOverrides += "org.fluentlenium" % "fluentlenium-core" % "0.10.3"

最新更新