2012-05-22 58 views
1

Play 2.0的Build.sbt使用pimped Project定義來發揮它的魔力;您可能需要添加的任何其他設置必須以k := v的方式手動輸入。對一般情況適用,但不適用於具體情況;即當需要設置一個總是爲Seq[Settings[_]]的sbt-plugin的設置時。以下是對可預見的工作Scala將Seq轉換爲k,v的sbt.Project.Setting [_]

lazy val main = PlayProject(appName, appVersion, ....).settings(
    version := appVersion 
) 

現在一個例子,如何得到序列[設置[_]轉化爲K,V對,這樣的播放按姓名電話:

def apply(...., ...., settings: => Seq[Setting[_]]) 

實際工作? !

我問過上播放的用戶,但運氣好,在那邊動物園,框架正在起飛和核心開發者顯然達到自己的耳朵......

回答

3

工作的呢?

….settings(mySeqOfSettings: _*) 
+0

@Debiliski謝謝,早些時候嘗試過,編譯器抱怨說,「這樣的註釋只允許在*參數的參數中。嚴重的是,在這裏眉頭皺起的痛苦,讓我瘋狂;-) – virtualeyes

+0

@debs其實你是正確的在奇異的情況下;然而,我有幾個Seq [Settings [_]]來傳入。這就是我得到洗滌的地方。也許一些flatMap或者減少魔法是爲了 – virtualeyes

+0

'(seq1 ++ seq2):_ *' - 或者你想消除重複的鍵嗎? – Debilski

相關問題