首页 > 解决方案 > 带有 sbt 程序集的 fatjar 上的“找不到类 org.apache.hadoop.fs.s3a.S3AFileSystem”

问题描述

我正在 Scala 中构建一个作业以在 Flink 集群上运行,它将数据存储在 AWS S3 中,并且我遇到了一些与依赖项相关的问题。

我已经检查了之前在这里提出的大部分问题,为了解决这个问题,我需要将flink-s3-fs-hadoop-1.9.1.jarjar 文件添加到$FLINK_HOME/plugins以成功运行我的工作:

我的问题是,这是否应该被检测为在 fatjar 中生成的sbt assembly?这些文件在 jar 中,但由于某种原因 Flink Cluster 看不到它们。

我知道在文档中说flink-s3-fs-hadoop-1.9.1.jar应该下载到$FLINK_HOME/plugins文件夹。

标签: scalasbtapache-flink

解决方案


文件系统不能捆绑在用户 jar 中,它们必须存在于 /lib 或 /plugins 中。使用文件系统的组件不一定知道 user-jar。


推荐阅读