找不到带有Spark Submit的akka配置



我构建了一个胖罐子,并试图在电子病历或本地使用spark-submit来运行它。这是命令:

spark-submit 
--deploy-mode client  
--class com.stash.data.omni.source.Runner myJar.jar  
<arguments>

我一直收到一个与akka配置相关的错误:

Exception in thread "main" com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'akka.version'

jar似乎根本找不到akka的reference.conf。有人处理过这个吗?我能够在我的本地机器上运行它,而不需要提交火花。

我认为问题是绑定到一个具有所有依赖项的jar中,这会导致Akka出现问题,如文档中所述:

Akka的配置方法在很大程度上依赖于模块/jar有自己的reference.conf文件。所有这些都将由配置发现并加载。不幸的是,这也是意味着如果将多个jar放入/合并到同一个jar中,则需要也合并所有reference.conf文件:否则所有默认值将丢失。

您可以按照本文档对应用程序和进程进行打包,以便在绑定时合并reference.conf资源。它谈到了使用sbt、maven和gradle的包装。

如果有帮助,请告诉我!!

这是我的合并策略。我有一个包罗万象的case _ => MergeStrategy.first。我把它改成case x => MergeStrategy.defaultMergeStrategy(x),它起作用了。

最新更新