如何在sbt设置初始化期间打印流

Jak*_*sky 6 sbt

我正在尝试在配置sbt设置时打印警告消息.我最初的尝试看起来像这样:

setting := {
  val log = streams.value.log
  val condition = //check something
  if (condition) {
    log.warn("Warning, condition! Specific functionality may not work.")
    //some default
  } else {
    //something else
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,由于streams是TaskKey,因此只能从任务访问其值.此外,我的设置被其他设置重用,因此我无法将其定义为任务.

因此我的问题是:在设置初始化期间打印警告的最佳方法是什么?

pfn*_*pfn 8

sLog.value.warn("danger!")
Run Code Online (Sandbox Code Playgroud)

sLogSettingKey[Logger]用于设置初始化.