相关疑难解决方法(0)

Spark 无法与 pureconfig 一起使用

我正在尝试使用 pureConfig 和 configFactory 进行我的 Spark 应用程序配置。这是我的代码:

import pureconfig.{loadConfigOrThrow}
object Source{
  def apply(keyName: String, configArguments: Config): Source = {
    keyName.toLowerCase match {
      case "mysql" =>
          val properties = loadConfigOrThrow[DBConnectionProperties](configArguments)
          new MysqlSource(None, properties)
      case "files" =>
        val properties = loadConfigOrThrow[FilesSourceProperties](configArguments)
        new Files(properties)
      case _ => throw new NoSuchElementException(s"Unknown Source ${keyName.toLowerCase}")
    }

  }
}

import Source
val config = ConfigFactory.parseString(result.mkString("\n"))
    val source = Source("mysql",config.getConfig("source.mysql"))
Run Code Online (Sandbox Code Playgroud)

当我从 IDE (intelliJ) 或直接从 java (即 java jar...) 运行它时,它工作正常。

但是当我使用 Spark-submit 运行它时,它失败并出现以下错误:

Exception in thread "main" java.lang.NoSuchMethodError: shapeless.Witness$.mkWitness(Ljava/lang/Object;)Lshapeless/Witness; …
Run Code Online (Sandbox Code Playgroud)

scala shapeless apache-spark pureconfig

6
推荐指数
1
解决办法
3264
查看次数

标签 统计

apache-spark ×1

pureconfig ×1

scala ×1

shapeless ×1