duk*_*kyz 9 scala version sbt sbt-plugin
我正在使用SBT 1.x构建一个scala项目(在scala 2.11中编写).有一些"scala版本"让我感到困惑.
SBT 1.x => scala 2.12
SBT plugin => scala 2.x
My project => scala 2.11
Run Code Online (Sandbox Code Playgroud)
请帮我弄清楚它们之间的区别或关系.在编译或运行项目时SBT如何区分它们?
lau*_*lic 10
sbt本身及其插件使用的Scala版本完全独立于用于编译项目代码的Scala版本.sbt版本确定它使用的Scala版本:
您可以在此设置此版本project/build.properties,例如:
sbt.version = 1.1.1
Run Code Online (Sandbox Code Playgroud)
您想要使用的sbt插件必须与给定版本的sbt兼容(并且许多插件与0.13和1.x交叉编译).
要设置要用于项目代码的Scala版本,请使用以下scalaVersion设置build.sbt:
scalaVersion := "2.12.4"
Run Code Online (Sandbox Code Playgroud)
同样,它独立于sbt的版本.您还可以交叉编译几个Scala版本的代码:
scalaVersion := "2.12.4"
crossScalaVersions := Seq("2.11.12", "2.12.4")
Run Code Online (Sandbox Code Playgroud)
然后,如果你compile在sbt中运行,它将使用Scala 2.12.4,如果你运行+compile,它将首先使用Scala 2.11.12然后使用2.12.4进行编译.有关跨建筑的更多信息,请参阅sbt docs .
| 归档时间: |
|
| 查看次数: |
2889 次 |
| 最近记录: |