我在工作中的項目是Lift框架上的web應用程序。我們也使用xsbt web plugin。有一個「核心」項目,其中包含絕大多數的功能;我目前的目標是創建兩個「分發」項目,爲「核心」項目添加一組不同的類路徑資源。問題是我要麼1)不能讓「分發」項目運行,要麼2)讓它們運行,但所需的資源似乎並不存在。如何在SBT中的項目之間共享資源
我已經試過
這裏是我的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
會爲我處理這個問題,但它顯然沒有。