在同一目录中排列了两个模块,我想让一个模块依赖另一个模块。我知道如何在项目目录中的Scala文件中执行此操作,但是,我希望build.sbt与自身执行相同的工作。这是一个无法运行的代码,希望能告诉你我的意思:
name := "foo"
libraryDependencies += ProjectRef(file("../bar"), "bar")
错误说:
没有隐含的Append.Value [Seq [sbt.ModuleID],sbt.ProjectRef],因此sbt.ProjectRef无法附加到Seq [sbt.ModuleID]。
答案 0 :(得分:2)
我倾向于选择project/Build.scala
中的构建定义,而不是build.sbt
。但是对象Build中的以下代码也应该用于标准build.sbt
。
//Build.scala
import sbt._
object Build extends Build {
lazy val projectA = project.in(file("a"))
lazy val projectB = project.in(file("b")).dependsOn(projectA)
}
或:
//your root build.scala
name := "test"
version := "1.0"
scalaVersion := "2.11.4"
val projectA = project.in(file("a"))
val projectB = project.in(file("b")).dependsOn(projectA)