Play框架中的依赖冲突解决方案

时间:2014-11-06 17:35:38

标签: scala playframework sbt ivy playframework-2.2

我正在使用Play框架来开发我的应用程序。

我的应用程序依赖于一个库,而该库依赖于“org.apache.httpcomponents”“httpclient”“4.3.1”,即4.3.1版本的apache httpclient。但是我在build.sbt

中添加了以下依赖项
libraryDependencies += "org.apache.httpcomponents" % "httpclient" % "4.2"

我希望SBT通过在类路径中添加4.2版本的httpclient来解决冲突。

当我运行“play classpath”时,我将httpclient的4.3.1版本作为依赖项。在这种情况下,如何强制SBT选择“4.2”版本的httpclient?

2 个答案:

答案 0 :(得分:2)

您似乎将force()添加到结尾:

libraryDependencies += "org.apache.httpcomponents" % "httpclient" % "4.2" force()

来源:http://www.scala-sbt.org/release/docs/Library-Management.html#Forcing+a+revision

答案 1 :(得分:1)

强制可以工作,但实际上你想看看是谁在拉旧版本并添加排除。见http://www.scala-sbt.org/release/docs/Library-Management.html#Exclude+Transitive+Dependencies