scala是2.10.1但sbt控制台不是?

时间:2013-05-06 20:48:33

标签: scala sbt

我是Scala / SBT的新手,所以请保持温和,但我正在努力通过SBT“入门”,我注意到我的brew安装的scala和sbt工具之间存在差异。当我直接为scala启动REPL时,它会将自己报告为Scala 2.10.1,这正是我所期望的。

bobk-mbp:work bobk$ scala
Welcome to Scala version 2.10.1 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_17).
Type in expressions to have them evaluated.
Type :help for more information.

scala> :quit

当我通过SBT启动REPL时,REPL断言它是2.9.2?!?

bobk-mbp:work bobk$ sbt console
[info] Set current project to default-690573 (in build file:/Users/bobk/work/)
[info] Starting scala interpreter...
[info] 
Welcome to Scala version 2.9.2 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_17).
Type in expressions to have them evaluated.
Type :help for more information.

scala> :quit

这是怎么回事?我期待构建工具使用我的开发框上托管的scala环境。它在哪里获得2.9.2,如何使用它来使用2.10.1?

scala和sbt都是通过brew安装的,但我认为这并不重要。 sbt版本似乎是0.12.3

bobk-mbp:work bobk$ sbt --version
sbt launcher version 0.12.3

3 个答案:

答案 0 :(得分:19)

下载scala并不需要安装一个。

如果要定义全局内容,请使用〜/ .sbt / global.sbt

在global.sbt中,您可以插入scalaVersion:=“2.10.1”,如果您想使用本地安装的版本,还可以定义scalaHome:= Some(file(“/ home / iraklis / apps / scala-2.10.1”) “))

有关详细信息,请访问sbt文档(link

答案 1 :(得分:16)

如果你没有参数启动sbt:

sbt
> ++ 2.10.1
> console

应为您提供该会话的Scala 2.10.1。我不知道如何在不重建sbt本身的情况下将其作为所有sbt会话的默认值。

答案 2 :(得分:3)

scalaVersionbuild.sbt中设置Build.scala可帮助您修复当前项目的scala版本。 Read here

name := "Sample"

scalaVersion := "2.11.0"

version := "1.1-RELEASE"