【问题标题】:How can i export ENV variable with SBT?如何使用 SBT 导出 ENV 变量?
【发布时间】:2019-04-16 00:57:42
【问题描述】:

我有使用环境变量的 application.conf, 当我运行我的 Play Scala 应用程序时,我想从 witch 文件中指定我需要导出变量,例如:.loc.env.dev.env ...

我的 .loc.env 文件看起来像:

VAR_KEY1=value1
VAR_KEY2=value2

我不想创建另一个 application.conf

我使用 sbt 1.0Playframework 2.6

所以我的问题是:

如何使用 sbt 导出环境变量?

如何从 sbt shell 检查环境变量?

【问题讨论】:

  • 这当然可以使用 shell 脚本和在 sbt 中使用 System.getProperty。您能解释一下为什么需要环境变量吗?例如。它是您配置过程的一部分吗?为什么需要在 sbt 中检查环境变量?什么是读取环境变量?
  • 我需要从 sbt shell 使用不同的环境变量(例如 LOC、DEV 或 QA)在一个命令中启动我的应用程序。我知道我可以创建一个不同的 application.conf,并使用不同的配置运行我的应用程序,但我不想要重复的配置代码,因为它应该受支持。

标签: scala playframework sbt


【解决方案1】:

envVars in IntegrationTest := Map("imageTag" -> sys.env.getOrElse("imageTag", imageTag.value))

【讨论】:

    【解决方案2】:

    您可以直接在 application.conf 中引用 ENV 变量,例如:

    slick.dbs.default.profile="slick.jdbc.MySQLProfile$"
    slick.dbs.default.db.driver="com.mysql.jdbc.Driver"
    slick.dbs.default.db.url=${?MYSQL_LINK}
    slick.dbs.default.db.user = "root"
    slick.dbs.default.db.password = ${?MYSQL_PASS}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-21
      • 2017-07-27
      • 1970-01-01
      • 1970-01-01
      • 2011-03-29
      • 2020-12-21
      相关资源
      最近更新 更多