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