1
我正在尝试执行sbt flywayMigrate -Denvi=foo
,但未设置系统属性envi
。非常感谢用于调试的指针,因为我现在几个小时都没有成功地找出这个问题的原因。迄今为止,SO或其他任何地方都没有问题。未设置SBT系统属性
在build.sbt,这将被用作一个变量。
lazy val envi = sys.props.getOrElse("envi", "default")
使用sys.env.get("ENVI")
,而不是目前不是由于共享/团队回购考虑的选项。
sbt -Denvi=foo console
否则将作为参数传递给主类,而不是要传递:
sbt console -Denvi=foo
scala> sys.props.get("envi")
res0: Option[String] = None
scala> sys.props.getOrElse("envi", "default")
res1: Option[String] = default
scala
,sbt
使用brew
你知道任何可能的原因,为什么产权不被设置,连同'sbt'? – Nogurenn
如果您在命令之前放置环境变量,它将起作用。我更新了我的答案。 – Harald
你可以通过调用'-d'来获得sbt的调试信息。比较'sbt -d console -Denvi = foo'和'sbt -d -Denvi = foo console'的输出 – Harald