我收到了问题here之类的未解决的依赖项。
获取org.scala-tools.sbt sbt_2.9.1 0.7.7 ...
::::::::::::::::::::::::::::::::::::::::::::::
:: UNRESOLVED DEPENDENCIES ::
::::::::::::::::::::::::::::::::::::::::::::::
:: org.scala-tools.sbt#sbt_2.9.1;0.7.7: not found
::::::::::::::::::::::::::::::::::::::::::::::
答案 0 :(得分:6)
SBT 0.7.7使用Scala 2.7.7进行项目配置。 SBT 0.11使用Scala 2.9.1。您可以将SBT 0.7.7用于该版本的配置,但是比0.7.7更新的SBT版本使用不兼容的配置文件。
请注意,这与将用于编译项目本身的Scala版本无关,只与用于编译配置文件的Scala版本无关。这些是不同的东西:您可以使用任何您想要编译项目的Scala版本,但必须使用SBT版本规定的Scala版本来编译项目配置。
要获得类似的错误消息,您必须更改项目配置的Scala版本,或者使用较新的SBT以及为旧版SBT编写的项目。找出它是什么,并根据需要纠正问题。
对于尚未迁移到新版本的项目,我有一个SBT 0.7.7,对于其他所有项目,我有最新的SBT。在每个脚本上添加一个不同的名称,你就可以了。
答案 1 :(得分:4)
虽然sbt-launch.jar
尝试下载并使用项目project/build.properties
中指定的sbt版本,但它们必须使用匹配的Scala版本进行编译。我认为sbt 0.7.7是使用Scala 2.7编译的,但是最新版本的sbt是使用Scala 2.9编译的。
大多数人现在只使用与sbt-launch.jar
中指定的版本匹配的project/build.properties
版本。如果你在Linux,OS X或任何可以运行Bash脚本的东西上运行,我强烈推荐来自launch script的sbt-extras。它将根据sbt-launch.jar
中指定的内容自动使用project/build.properties
版本,并提供其他一些方便的命令行参数。
如果这对您不起作用,我认为最好的选择是启动脚本以启动sbt的不同次要版本。例如sbt7
,sbt10
和sbt11
,分别发布0.7.7,0.10.1和0.11.2。
答案 2 :(得分:0)
我注意到可以通过更新或删除project_root_folder / project / build.properties中的sbt.version条目来解决此问题我当前的sbt版本是0.11.2并且我已将其更新为sbt.version = 0.11.2 。删除条目也有效。