首页 > 解决方案 > org.apache.spark#hadoop-cloud_2.12;3.1.2:未找到

问题描述

在 Spark SBT 项目中,我按照https://spark.apache.org/docs/latest/cloud-integration.html直接访问s3. 但是,我得到org.apache.spark#hadoop-cloud_2.12;3.1.2: not found. 文档提到provided了范围,但由于这项工作是在本地运行的,因此没有 JDK/应用程序容器提供任何东西。在 Maven Central 上,我看到各种供应商发布了各自的版本方案,但没有一个与我的特定 Spark 版本匹配:3.1.2

这些是我的相关依赖项:

  // Version.spark is 3.1.2
  val spark   = Seq(
    "org.apache.spark" %% "spark-core"   % Version.spark,
    "org.apache.spark" %% "spark-sql"    % Version.spark,
    "org.apache.spark" %% "hadoop-cloud" % Version.spark
  )

我应该改用hadoop-aws包裹吗?https://hadoop.apache.org/docs/current/hadoop-aws/tools/hadoop-aws/index.html

标签: scalaapache-sparkhadoop

解决方案


与 hadoop-aws 依赖项一样,它不包括在内,此时最新的 jar 位于 cloudera 存储库中,默认情况下未添加到 spark 中。 https://mvnrepository.com/artifact/org.apache.spark/spark-hadoop-cloud?repo=cloudera-repos

以下对我来说适用于 spark 3.1.2:

.config("spark.jars.repositories", "https://repository.cloudera.com/artifactory/cloudera-repos/")
.config("spark.jars.packages", "org.apache.spark:spark-hadoop-cloud_2.12:3.1.1.3.1.7270.0-253")

推荐阅读