我是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
答案 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)
在scalaVersion
或build.sbt
中设置Build.scala
可帮助您修复当前项目的scala版本。 Read here
name := "Sample"
scalaVersion := "2.11.0"
version := "1.1-RELEASE"