1

我正在尝试将一个子项目添加到我的 Play Framework 项目中,并发现那里通常缺少文档。

我创建了一个游戏项目,我们称之为它my-web,它在目录中/my-cool-project/web。我还有另一个我想my-web依赖的项目,我们称之为my-model. my-model一个 git 子模块my-cool-project,当我拉它时,我的目录结构是

/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 中尝试的任何其他内容吗?

4

2 回答 2

2

project 用于定义项目模型和子项目。对于兄弟项目,您可以使用 RootProject 或 ProjectRef。在你的情况下,我会使用 RootProject。

lazy val myModel = RootProject(file("../my-model"))

当你编译一个项目时,所有 RootProjects 和 ProjectRefs 的编译也会被触发。您将在 my-model 项目的构建文件中为 my-model 定义项目设置。这减少了项目定义的重复。

想想 RootProject 和 ProjectRef 就像 Eclipse 中的项目引用。

让我知道这是否是您正在寻找的。

于 2013-10-31T19:08:18.537 回答
1

更改lazy val myModel = project.in(file("../my-model"))

lazy val myModel = project.in(file("my-model"))

它引用的路径来自项目的根目录。因此,您可以相应地给出这条路径。

于 2013-10-31T15:22:11.530 回答