build.sbt和application.conf没有读取.env设置的环境变量。
创始人
2024-12-25 11:00:06
0

要在Scala中使用环境变量,你可以使用Typesafe Config库来读取application.conf文件,并使用scala-sbt-dotenv库来读取.env文件。

首先,确保在你的项目中添加以下依赖项:

libraryDependencies ++= Seq(
  "com.typesafe" % "config" % "1.4.1",
  "net.codingwell" %% "scala-sbt-dotenv" % "1.2.0"
)

接下来,创建一个名为EnvConfig的新文件,用于从.env文件中读取环境变量:

import com.typesafe.config.{Config, ConfigFactory}
import net.codingwell.scalaguice.InjectorExtensions._

object EnvConfig {
  private val config: Config = ConfigFactory.load()
  private val envConfig: Config = config.getConfig("env")

  val foo: String = envConfig.getString("FOO")
  val bar: Int = envConfig.getInt("BAR")
  // 添加更多环境变量

  // 你也可以添加一些默认值
  val baz: String = envConfig.getOrElse("BAZ", "default-value")
}

然后,在你的build.sbt文件中添加以下内容,以确保.env文件在构建过程中被加载:

enablePlugins(SbtDotenv)

// 如果你的.env文件不在项目根目录,可以设置以下路径
dotenvPath := Some(file("path/to/.env"))

最后,在你的代码中可以直接使用EnvConfig对象来访问环境变量。例如:

object Main extends App {
  println(EnvConfig.foo)
  println(EnvConfig.bar)
  println(EnvConfig.baz)
}

当你运行上述代码时,它将从.env文件中读取相应的环境变量并打印出来。如果.env文件中没有相应的变量,它将使用默认值(如果有的话)。

希望这可以解决你的问题!

相关内容

热门资讯

微扑克有辅助挂!微扑克真的有辅... 微扑克有辅助挂!微扑克真的有辅助,wpk一贯是真的有挂,解说技巧(有挂ai代打)1、每个玩家都可以进...
wepokeai代打!wepo... wepokeai代打!wepoke软件透明挂,wepoke辅助真的假的,2025新版教程(有挂规律)...
必备辅助推荐!广东老友麻将有没... 必备辅助推荐!广东老友麻将有没有挂(透视)都是是有挂(2025已更新)(哔哩哔哩)1.广东老友麻将有...
微扑克有辅助挂!微扑克辅助钻石... 微扑克有辅助挂!微扑克辅助钻石,微扑克竟然是真的有挂,科技教程(有挂工具)是一款可以让一直输的玩家,...
wepoke有挂!德州wepo... wepoke有挂!德州wepower透视辅助,wepoke显示有,微扑克教程(有挂工具);原来确实真...
玩家爆料!东游麻将中挂件(辅助... 玩家爆料!东游麻将中挂件(辅助)一贯有挂(2024已更新)(哔哩哔哩);1、金币登录送、破产送、升级...
微扑克ai辅助!微扑克ai人工... 一、微扑克简介了解软件请加微:136704302微扑克是一款在线扑克游戏平台,玩家可以在平台上进行多...
透牌教程!wepoke游戏辅助... 透牌教程!wepoke游戏辅助工具(wepoke辅助挂)WepOke(一贯真的有挂);科技详细教程小...
分享实测!胡乐辅助器免费版(辅... 分享实测!胡乐辅助器免费版(辅助挂)竟然有挂(2025已更新)(哔哩哔哩)1、玩家可以在胡乐辅助器免...
微扑克辅助机器人!wpk微扑克... 微扑克辅助机器人!wpk微扑克辅助透视,微扑克ai辅助工具,细节揭秘(有挂技巧);微扑克是一种具有地...