我正在尝试用sbt设置一个多项目。目前它很简单(我这样做是为了学习),但我对它有一些麻烦。
这是文件夹结构
MyProject
|
|-project
|
|- Build.scalaBuild.scala文件的内容:
import sbt._
import Keys._
object RootBuild extends Build {
lazy val root = Project(id = "root", base = file(".")) aggregate(bar, foo)
lazy val foo = Project(id = "foo", base = file("foo"), dependsOn(bar))
lazy val bar = Project(id = "bar", base = file("bar"))
}当我运行sbt clean compile时,我得到以下错误:
[info] Done updating.
[info] Compiling 1 Scala source to C:\MyProject\project\target\scala-2.9.2\sbt-0.12\classes...
[error] C:\MyProject\project\Build.scala:7: parameter specified twice: aggregate
[error] lazy val foo = Project(id = "foo", base = file("foo"), dependsOn(bar))
[error] ^
[error] one error found
[error] (compile:compile) Compilation failed
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? qTerminate batch job (Y/N)? 我不确定为什么我会得到这个错误,有什么想法可以解决这个问题吗?
发布于 2013-07-03 21:42:47
将dependsOn移出Project(id = "foo", base = file("foo")).dependsOn(bar)项目。如果要在项目声明中添加项目依赖项,请使用project case类的依赖项参数:
dependencies: => Seq[ClasspathDep[ProjectReference]]
lazy val foo = Project(id = "foo", base = file("foo"), dependencies = Seq(bar))https://stackoverflow.com/questions/17449429
复制相似问题