Scala 让build.sbt定义对另一个本地库的依赖关系

Scala 让build.sbt定义对另一个本地库的依赖关系,scala,dependencies,sbt,Scala,Dependencies,Sbt,在同一个目录中有两个模块,我希望其中一个模块依赖于另一个模块。我知道如何在项目目录中的Scala文件中执行此操作,但是,我希望build.sbt本身执行相同的工作。下面是一个不起作用的代码,希望能向您传达我的意思: name := "foo" libraryDependencies += ProjectRef(file("../bar"), "bar") 错误显示: 找不到Append.Value[Seq[sbt.ModuleID],sbt.ProjectRef]的隐式表达式,因此无法将sb

在同一个目录中有两个模块,我希望其中一个模块依赖于另一个模块。我知道如何在项目目录中的Scala文件中执行此操作,但是,我希望build.sbt本身执行相同的工作。下面是一个不起作用的代码,希望能向您传达我的意思:

name := "foo"

libraryDependencies += ProjectRef(file("../bar"), "bar")
错误显示:

找不到Append.Value[Seq[sbt.ModuleID],sbt.ProjectRef]的隐式表达式,因此无法将sbt.ProjectRef追加到Seq[sbt.ModuleID]


我倾向于在
project/build.scala
中使用构建定义,而不是
build.sbt
。但是对于标准的
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)
}
或:


正如我所提到的,我完全确定如何使用
项目
目录中的Scala文件。我的问题是,我们是否可以不使用这些文件,而只使用
build.sbt
文件。谢谢您的回答,thoAs说,它也适用于build.sbt。假设您有一个包含两个子项目projectA和projectB的项目结构。只是把上面对象的内容放到你的根build.sbtOh中,谢谢你的编辑:)现在我明白你的意思了!
//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)