SBT难度

时间:2015-06-15 18:18:48

标签: scala sbt

我最近开始使用scala sbt。我发现SBT非常困难的一件事是找到正确的依赖签名。

例如,我正在阅读一篇写于2014年的博客,并说它添加了以下libraryDependencies

"net.liftweb" %% "lift-son" % "2.5+"
"org.apache.httpcomponents" %% "httpclient" % "4.5"

现在这可能对我的环境有效,也可能无效。因为我已经安装了更新版本的scala和sbt。

现在,当我尝试使用谷歌搜索时,我发现更多陈旧资源可能无法引用当前环境。

我甚至看看maven资料库

http://mvnrepository.com/artifact/net.liftweb

现在我看到了很多版本。

所以我的问题是如何确定哪个适合我?我看到很多人通过反复试验和复制粘贴来做这件事。

因此,经过反复试验,我意识到对于lift-json,我应该使用

"net.liftweb" %% "lift-son" % "2.5+"

我可以使用什么理由为我的环境选择合适的库。 apache httpclient仍然给我错误。

对不起,如果这太基础了。就像我说的,我是SBT的新手。但似乎我没有合理的方式来创作这个文件。它只是复制,粘贴,然后反复试验。

1 个答案:

答案 0 :(得分:3)

依赖项中的%%会自动将_2.XX scala版本附加到您的工件ID。它使得scala依赖项更易于管理,但您无法将其与Java依赖项(如apache httpcomponents)一起使用。而只需使用%

"org.apache.httpcomponents" % "httpclient" % "4.5"