build.sbt已经设置好了
scalaVersion := "2.11.7"
Run Code Online (Sandbox Code Playgroud)
但是,每当我运行build.sbt所在的sbt时,我总是会收到此错误
org.scala-lang#scala-library;2.10.5: configuration not found in
org.scala-lang#scala-library;2.10.5: 'master(compile)'. Missing
configuration: 'compile'. It was required from org.scalaz#scalaz-
effect_2.10;7.1.0 compile
Run Code Online (Sandbox Code Playgroud)
一开始,实际上它的版本是2.10.5
Getting Scala 2.10.5 (for sbt)...
Run Code Online (Sandbox Code Playgroud)
现在我无法继续.我在我的macbook中运行.
sbt和你的应用程序(由sbt管理)对Scala有不同的要求.它们都是Scala应用程序,因此它们肯定需要Scala运行时.
sbt使用固定版本的Scala,您可以在项目中安装的所有插件都应该与特定的Scala版本兼容.您无法更改sbt的Scala版本.它在代码中被"埋葬",而不是用户应该改变的东西.
但是,您的Scala/sbt项目可以使用他们想要的任何Scala.这是一个单独的问题.您可以使用build.sbt和scalaVersion设置Scala版本.
话虽如此,在一开始,sbt将始终下载自己的内部依赖项,Scala包括.然后保存在~/.sbt/boot.
? $ ls -l ~/.sbt/boot
total 424
-rw-r--r-- 1 jacek staff 0 13 sie 20:22 sbt.boot.lock
drwxr-xr-x 4 jacek staff 136 6 wrz 2015 scala-2.10.4
drwxr-xr-x 4 jacek staff 136 2 wrz 2015 scala-2.10.5
drwxr-xr-x 4 jacek staff 136 31 sty 2016 scala-2.10.6
drwxr-xr-x 4 jacek staff 136 3 lis 2015 scala-2.11.5
-rw-r--r-- 1 jacek staff 217029 20 lip 10:37 update.log
Run Code Online (Sandbox Code Playgroud)
根据您使用的sbt版本,您可能会看到正在下载的不同Scala版本,但它们是sbt的内部版本.你不应该担心这一点.接受它:)
ps sbt内部使用的Scala版本与您可能已为Scala/sbt项目下载的版本完全不同.