我有以下Scala的應用程序的設置和一個共同的核心庫: 根如何從其他sbt項目引用外部sbt項目?
-> /ApplicationA
-> /project
-> /build.sbt
-> /CoreLibrary
-> /project
-> /build.sbt
我想從ApplicationA添加引用CoreLibrary點菜Eclipse項目的參考,讓每一位CoreLibrary改變ApplicationA時間也建造。從來就試圖build.Scala爲ApplicationA以下內容:
val core = Project(
id = "platform-core",
base = file("../CoreLibrary"))
val main = Project(id = "application, base = file(".")).dependsOn(core)
然而,編譯時ApplicationA SBT抱怨的依賴只能是一個子目錄!!:
java.lang.AssertionError: assertion failed: Directory C:\git\CoreLibrary is not contained in build root C:\git\ApplicationA
這似乎完全是簡單,這個項目依賴性的正確方法是什麼?
第一種方法完美運作!謝謝!必須使用RootProject :) 第二種方法的問題是它們是2 github回購,所以爲了讓它們工作,您需要額外的一個在頂部或東西 – Diego 2012-07-25 16:28:21
@Diego請參閱git submodule以獲得單獨的git在單一外部git回購下回購。 – 2012-07-25 22:22:52
所謂的「正確的方式」是IMO的一個不好的解決方案。您不應該需要容器項目來聲明兩個兄弟之間的依賴關係。 – 2013-01-31 10:04:17