0
我有一個很大的root sbt項目,其中包含幾個子項目。在這些項目定義中,有很多代碼重複,我試圖刪除。是否可以使用隱式類來擴展build.sbt語法?
例如每個組件項目包含以下代碼:
project
.enablePlugins(sbtassembly.AssemblyPlugin)
.settings(
mainClass in Compile := Some(mainClassName),
assemblyJarName in assembly := jarName,
assemblyMergeStrategy in assembly := {
case PathList("META-INF", [email protected]_*) => MergeStrategy.discard
case PathList("sandbox.sc") => MergeStrategy.discard
case PathList("org", "joda", "time", [email protected]_*) => MergeStrategy.first
case PathList("reference.conf") => MergeStrategy.concat
case x => MergeStrategy.deduplicate
}
)
相反,我想寫出這樣的事情:
project
.assembly(className, jarName)
是否有可能實現這樣的語法?我知道使用隱式類可以在典型的scala文件中實現這種語法。這是一種在sbt中完成的方法嗎?
謝謝@chengpohi,它像一陣微風,幫助我更好地理解sbt。 – nanarth