我正在尝试将子项目添加到我的Play Framework项目中,并找到通常缺少的文档。
我创建了一个播放项目,我们称之为my-web
,它位于目录/my-cool-project/web
中。我还有一个我希望my-web
依赖的项目,我们称之为my-model
。 my-model
my-cool-project
的git子模块,当我拉它时,我的目录结构是
/my-cool-project
/my-web
/app
/conf
build.sbt
/my-model
/main
/java
/src
现在,如何将my-model
添加为my-web
的子项目?我试过了
lazy val myModel = project.in(file("../my-model"))
但我得到的是my-model
未包含在my-web
的构建根目录中...我还可以在build.sbt中尝试其他任何内容吗?
答案 0 :(得分:2)
项目用于定义项目模型和子项目。对于兄弟项目,您可以使用RootProject或ProjectRef。在你的情况下,我会使用RootProject。
lazy val myModel = RootProject(file("../my-model"))
编译项目时,也会触发所有RootProjects和ProjectRefs的编译。您将在my-model项目的构建文件中为my-model定义项目设置。这减少了项目定义的重复。
将RootProject和ProjectRef视为Eclipse中的项目引用。
如果您正在寻找,请告诉我。
答案 1 :(得分:1)
更改lazy val myModel = project.in(file("../my-model"))
到
lazy val myModel = project.in(file("my-model"))
它引用的路径来自项目的根目录。所以,你可以相应地给出这条路径。