我有一個由SBT管理的scala項目,其中包括許多適配器鏈接到專有代碼的類。這些商業許可證阻止了鏈接庫的分發,以及我自己編寫的適配器代碼。如何構建JVM項目以隔離專有代碼?
我想從我的其他代碼中分離出這些適配器,以便理論上可以將我的項目分配爲開源代碼。我需要確保每個適配器
- 是單獨版本控制。
- 可以是編譯& JAR創建過程中,開/關選擇地切換(有點像
--with-xxx
在C項目運行./configure
時)
什麼的應該是這樣的目錄結構是什麼樣子? SBT項目怎麼樣?如果可能,我想遵守通常的Gradle目錄結構。
需要考慮的問題是每個適配器都依賴於核心項目(即他們繼承了主項目中定義的Adapter
接口),而核心項目依賴於單個適配器。所以我不確定如何設置它以避免循環依賴,同時將核心代碼與適配器代碼隔離開來。
是在需要的主源代碼編譯或只爲測試的核心項目適配器的依賴? – Teliatko