以这些不同方式运行scala shell有何区别?
最佳答案
SBT与build.sbt
文件定义的特定项目相关联,其方式是$ sbt console
可以加载与$ scala
相同的REPL环境,但是要添加可在导入中定义的所有项目代码和依赖项。另外,它将使用build.sbt
定义的Scala版本。
例如:
$ scala
scala> import scalaz._
<console>:7: error: not found: value scalaz
import scalaz._
但是用这个
build.sbt
:scalaVersion := "2.11.4"
libraryDependencies += "org.scalaz" %% "scalaz-core" % "7.1.0"
导入成功:
$ sbt console
...
scala> import scalaz._
import scalaz._
该命令将加载Scala 2.11.4,而不是系统范围的Scala(或
PATH
上的任何版本)。此外,在构建的
sbt console
中添加新项目后调用libraryDependencies
将获取它们。
关于scala - 运行 `scala`和 `sbt console`有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27192398/