2015-05-29 58 views
3

我想修改publish任務並有條件地執行它(0.13.8)。以下是我試過(簡體):如何有條件地修改現有的SBT任務

publish := { 
    Def.taskDyn { 
    if (true) { 
     Def.task { 
     publish.value 
     } 
    } else { 
     Def.task() 
    } 
    }.value 
} 

這失敗,但以下情況除外:

[error] (root/*:publish) sbt.Init$RuntimeUndefined: References to undefined settings at runtime. 

任何想法?

回答

3

試試這個:

publish := { 
    if(true) { 
     publish 
    } else Def.task { 
     println("something else") 
    } 
}.value