मेरे पास कई एसबीटी परियोजनाएं हैं जिनमें सभी का एक सामान्य सेटअप है - उदा। बहु मॉड्यूल, प्रकाशित करने के लिए सेटिंग्स आदि आदिएसबीटी आम निर्माण सेटिंग्स
मैं एक आम उदाहरण कैसे प्रदान करूं कॉमनबिल्ड क्लास कि प्रत्येक परियोजना से इसका विस्तार हो सकता है? उदाहरण के लिए:
trait CommonBuild {
val publishSettings = Seq(
publishTo := Some("", ""),
credentials += ...
)
def module(name: String) (
settings: Seq[Setting[_]],
projectId: String = PROJECT + "-" + name,
dirName: String = name,
srcPath: String = PROJECT + name
) = Project(projectId, file(dirName), settings = (buildSettings ++ srcPathSetting(projectId, srcPath)) ++ publishSettings ++ settings)
}
अब यह एक परियोजना का निर्माण द्वारा इस्तेमाल किया जा सकता है:
object ProjABuild extends CommonBuild {
// use CommonBuild methods/vals
}
object ProjBBuild extends CommonBuild {
// use CommonBuild methods/vals
}
क्या ये परियोजनाएं एसबीटी परियोजनाओं को समर्पित हैं, या वे एसबीटी उपप्रोजेक्ट हैं? –
प्रोजेक्ट ए और बी एसबीटी परियोजनाओं को समर्पित हैं, उपप्रोजेक्ट/मॉड्यूल नहीं। – Dzhu
ऐसा लगता है कि सवाल build.scala में बाहरी लाइब्रेरी कोड का उपयोग करने का एक विशेष मामला है? जो आपका लक्ष्य पूरा करेगा, है ना? – Owen