我正在工作的项目是Lift Framework 上的一个 webapp。我们也在使用xsbt 网络插件。有一个“核心”项目,其中包含绝大多数功能;我当前的目标是创建两个“分发”项目,将一组不同的类路径资源添加到“核心”项目。问题是我要么 1) 无法运行“分发”项目,要么 2) 让它们运行,但所需的资源似乎不存在。
我试过的
这是我的删节版project/Build.scala
:
lazy val core = Project("Core", file("core"))
.settings( /*some dependencies, resolvers, webSettings */ )
lazy val app1 = Project("App1", file("app1"))
.aggregate(core)
.settings( /*the same settings as core */ )
lazy val app2 = Project("App2", file("app2"))
.aggregate(core)
.settings( /*the same settings as core*/ )
然后在 和 的目录结构中app1
,app2
我在src/main/resources/aFileINeed
. 核心应用程序正在使用class.getResource
从类路径加载文件的方法。
问题
如果我尝试使用 运行其中一个分发项目,container:start
它不会在类路径中检测到所需的文件。此外,它声称这src/main/webapp
不是现有目录(该文件夹包含在核心项目中,因为它是 xsbt Web 插件所必需的)。
我怎样才能让这些项目“合并”他们的资源?我希望在项目定义中使用aggregate
or可以为我处理这个问题,但显然没有。dependsOn
Build.scala