我安装了scala和sbt。我想知道如何告诉 sbt 使用我已安装的现有 scala,因为我注意到的是,当我运行 sbt 控制台时,它会尝试再次下载 scala 和其他软件包。
文档中:http://www.scala-sbt.org/release/docs/Howto/scala.html#local
将此添加到您的build.sbt
:
scalaVersion := "2.10.0-local"
scalaHome := Some(file("/path/to/scala/home/"))
编辑:
哦,我推荐@0__的建议。 只需使用默认的sbt
方式让 sbt 管理每个项目的 scala 版本:它很聪明,不会下载相同的版本两次,在项目之间共享版本。它值得使用磁盘空间,并允许您与可能没有安装该特定 Scala 版本的其他人共享您的build.sbt
/path/to/scala/home/
或任何地方。
不是直接的答案,而是建议:
除非指定retrieveManaged := true
,否则 sbt 只保留一个副本~/.sbt
该副本将在所有 sbt 项目之间共享。因为不同的项目可以使用不同的 Scala 版本,所以这种方法比指向现有安装要好得多。如果你有六个项目使用 Scala 2.9.3,一个使用 2.9.2,十个使用 2.10.0,五个使用 2.10.3,sbt 只会保留四个不同的 Scala 版本,但不会有多个副本。