scala - 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
解决方案
与 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")
推荐阅读
- sql - 如何使用窗口滞后功能对具有多种传感器类型的数据进行分区
- webforms - UniSubroutine 异常
- python - 我应该在同一个端口上运行普通的烧瓶应用程序和套接字吗?
- spring-integration - 春天云流。将事件列表作为单个事件进行采购
- jakarta-ee - Java 项目集群以实现高可用性:如何从项目中使用的第三方框架中序列化类?
- mysql - MySQL 为什么将限制从 20 增加到 21 将执行时间从 1,4s 减少到 0,0067s
- javascript - 检测在 devtools 中所做的更改
- swift - 一个新分配的对象可以以前在 Swift 中使用过 ObjectIdentifier 吗?
- python - 在 Python/Django 中,清理/转义用户输入电子邮件的字符需要哪些步骤?
- html - 如何在Angular中的组件中获取表(数组)索引