【发布时间】:2012-09-19 12:24:22
【问题描述】:
我正在从事的项目是Lift 框架上的网络应用程序。我们也在使用xsbt web plugin。有一个“核心”项目,其中包含绝大多数功能;我目前的目标是创建两个“分发”项目,将一组不同的类路径资源添加到“核心”项目。问题是我要么 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 插件所必需的)。
我怎样才能让这些项目“合并”它们的资源?我希望在 Build.scala 项目定义中使用 aggregate 或 dependsOn 可以为我解决这个问题,但显然没有。
【问题讨论】:
标签: scala sbt xsbt-web-plugin