首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flink Scala缺失导入

Flink Scala缺失导入
EN

Stack Overflow用户
提问于 2022-11-14 20:38:22
回答 2查看 25关注 0票数 0

在我的Flink项目中,我找不到连接器的某些库(具体来说,我需要吃一次CSV,在批处理或流模式下读取几个块数据的TBs )。我想我有所有必需的包裹,但我仍然得到:

代码语言:javascript
复制
[ERROR] import org.apache.flink.connector.file.src.FileSource
[ERROR]                                   ^
[ERROR] C:\Users\alias\project\...\MyFlinkJob.scala:46: error: not found: type FileSource

我的POM.xml相当大,但我想我有相关的进口:

代码语言:javascript
复制
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-parquet</artifactId>
            <version>1.15.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-connector-filesystem_${scala.binary.version}</artifactId>
            <version>1.11.6</version>
        </dependency>
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-hadoop-bulk_2.12</artifactId>
            <version>1.14.6</version>
        </dependency>

我正在使用以下版本:

代码语言:javascript
复制
<scala.version>2.12.16</scala.version>
<scala.binary.version>2.12</scala.binary.version>
<log4j.version>2.17.1</log4j.version>
<flink.version>1.15.1</flink.version>

我是否需要一个与Java不同的Scala导入路径?

我希望Flink文档有示例代码片段中的导入,因为我花了很长时间试图找出这些导入。什么是推荐的._导入?

我查看了包中的符号,但没有找到FileSystem。我查找了不同的教程和示例项目,展示了如何使用Flink读取/侦听拼板和CSV文件。我以这种方式取得了一些进展,但我在Scala (不是Java)中找到的将Parquet文件用作源代码的少数示例中,即使添加了它们的依赖项并运行了mvn clean install,导入仍然无法工作。

EN

回答 2

Stack Overflow用户

发布于 2022-11-14 21:07:17

我尝试使用GitHub的预先搜索找到一个使用FileSource的公共Scala项目,并最终找到了一个具有以下依赖性的项目:

代码语言:javascript
复制
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-connector-files</artifactId>
            <version>${project.version}</version>
        </dependency>

index.scala-lang.org上缺少了这个包,我认为应该在那里寻找依赖项(这是我的第一个Scala项目,所以我认为这是在PyPi中找到类似PyPi的包的地方)。看起来可能是一个更好的去处。

票数 1
EN

Stack Overflow用户

发布于 2022-11-15 10:07:17

Flink 1.15有一个没有Scala的类路径,这使得许多Flink工件不再有Scala后缀。您可以在专门的Flink博客中阅读有关此主题的所有内容:https://flink.apache.org/2022/02/22/scala-free.html

您还可以在该博客中看到如何在Flink中使用任何Scala版本,而不是仅限于Scala2.12.6。TL;DR:您应该在应用程序中使用Java。Scala也将在Flink 1.17中被废弃。

最后但同样重要的是:不要混合和匹配Flink版本。那不管用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74437560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档