在我的项目中,我想使用 GitHub 中的一些代码。 Build.scala
中的依赖定义如下:
object BuildSettings {
val buildVersion = "1.0-SNAPSHOT"
val buildScalaVersion = "2.9.1"
val buildName = "PageAnalyzer"
val buildSettings = Defaults.defaultSettings ++ Seq (
organization := buildOrganization,
version := buildVersion,
scalaVersion := buildScalaVersion,
name := buildName
)
}
object PageAnalyzerBuild extends Build {
lazy val root = Project (
"root",
file ("."),
settings = BuildSettings.buildSettings
) dependsOn (depProject)
val depProject = RootProject(uri("git://github.com/me/some.git"))
}
由于某些原因,我必须使用 Scala 2.9.x 构建根项目。在 SBT 0.13 中,
depProject
将使用 2.10.x 构建,并且无法构建依赖项。 root
项目试图寻找一些 some_2.9.1
,但只构建了 some_2.10
。将
scalaVersion
更改为 2.10.x 工作正常。但我必须用 2.9.x 构建根项目。有没有办法为从 git 克隆的 scalaVersion
定义 depProject
? 最佳答案
您应该可以使用 scalaVersion in [project-id] := "2.9.0"
,其中 project-id
是来自 depProject
的项目标识符,或者只将 depProject
用于 in
。运行 projects
以了解可用项目的名称并为 in
选择合适的项目。
它看起来类似于 Setting javac options for SBT dependencies 。
关于scala - SBT中git下为RootProject定义scalaVersion设置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21597960/