在使用插件导入语法时, SBT0.12.2
总是尝试使用 Scala 解析插件。2.9.2
%%
我曾尝试在 Scala 中设置旧版本build.sbt
、新版本等。甚至target
每次都删除文件夹......似乎没有什么不同。
name := "Game"
version := "1.0"
scalaVersion := "2.9.1" // SBT is ignoring the scala version
SBT 是递归的,因此您需要为项目指定 scala 版本,以构建您的项目。换句话说,您需要在文件中添加适当scalaVersion
的plugins.sbt
内容。
对于项目中的所有插件,您可以scalaVersion
在project/plugins.sbt
文件中设置为您的项目配置构建项目定义以及定义插件的位置。
$ cat project/plugins.sbt
scalaVersion := "2.9.3"
然而,有一种方法可以为插件设置更具体的 sbt 和 Scala 版本。
而不是使用addSbtPlugin
that 接受单个ModuleID
(用%
and构造%%
),使用addSbtPlugin(dependency: ModuleID, sbtVersion: String)
or even addSbtPlugin(dependency: ModuleID, sbtVersion: String, scalaVersion: String)
,例如
$ cat project/plugins.sbt
// It doesn't exist and it's only for demo purposes
addSbtPlugin("com.timushev.sbt" % "sbt-updates" % "0.1.0", "0.12.2", "2.5")