設定を変更してタスクをpublish-snapshot
実行するコマンドが必要です(その設定はコマンドの実行時に計算されます)。publish
version
version
Insideコマンドの現在の値を取得する方法を理解しました。これは、タスクProject.runTask("task", "scope", ...)
を呼び出すための正しい呼び出しのようです。publish
私が混乱しているのは、State
インスタンスを新しいバージョン値で変更する方法だけです。私の試みはすべて、元のバージョン設定には何の影響も与えていないようです。
私の最後の試み:
val printVers = TaskKey[Unit]("printvers")
val printVersTask = TaskKey[Unit]("printvers") <<= {version map println}
def publishSnapshot = Command.command("publish-snapshot") { state =>
val newState = SessionSettings.reapply(state.get(sessionSettings).get.appendRaw(version := "???"), state)
Project.runTask(printVers in Compile, newState, true)
state
}
lazy val root = Project("main", file("."),
settings =
Defaults.defaultSettings ++
Seq(printVersTask)).settings(commands += publishSnapshot)
その動作を修正する方法はありますか?