Scala Spark作业无法加载动态配置
我有以下设置Scala Spark作业无法加载动态配置,scala,apache-spark,lazy-evaluation,typesafe-config,Scala,Apache Spark,Lazy Evaluation,Typesafe Config,我有以下设置 application.conf project { env = ${?PASSED_FROM_ENV} } Main.scala object Main { val config = ConfigFactory.load() val env = config.getInt("project.env") def main(args: Array[String]): Unit = { implicit val context = ....
application.conf
project {
env = ${?PASSED_FROM_ENV}
}
Main.scala
object Main {
val config = ConfigFactory.load()
val env = config.getInt("project.env")
def main(args: Array[String]): Unit = {
implicit val context = ....
//Using the variable somewhere in the main
}
}
我有一个从环境读取的配置
export PASSED_FROM_ENV=10
然后在main方法之外初始化此配置。下面的代码不工作,我得到类初始化异常。但是,当我将val声明更改为lazy,或者将其移动到main中时,这一切都很好。在Spark作业中,是否对动态传递的静态变量进行了某种初始化?我想知道在从环境中读取配置之前,是否需要进行SparkContext初始化
谢谢