当前位置: 首页 > 知识库问答 >
问题:

为什么flink-quickstart-scala建议在默认范围内添加连接器依赖项,而Flink配置单元集成文档则建议相反

张鹏鹍
2023-03-14

这就是flink-quickstart-scala的建议:

        <!-- Add connector dependencies here. They must be in the default scope (compile). -->

        <!-- Example:
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-connector-kafka_${scala.binary.version}</artifactId>
            <version>${flink.version}</version>
        </dependency>
        -->

它还与Flink项目配置保持一致:

然而,Flink Hive Integration docs的建议恰恰相反:

如果您正在构建自己的程序,那么在mvn文件中需要以下依赖项。建议不要在生成的jar文件中包含这些依赖项。您应该在运行时添加上面所述的依赖项。

共有1个答案

阙星渊
2023-03-14

造成这种差异的原因是,对于配置单元,建议使用各自的配置单元依赖项启动集群。文档指出,在启动集群之前,最好将依赖项放到lib目录中。这样,集群就可以运行使用配置单元的作业。同时,您不必将此依赖项绑定在用户jar中,这样可以减小其大小。但是,如果您愿意,不应该有任何东西阻止您将配置单元依赖项与用户代码捆绑在一起。

 类似资料:
  • 我有一个Flink会话集群(作业管理器任务管理器),版本1.11.1,配置了log4j控制台。属性包括Kafka appender。此外,在作业管理器和任务管理器中,我都启用了flink-s3-fs-hadoop内置插件。 我已经将kafka客户端jar添加到flink/lib目录,这是容器运行所必需的。但在实例化S3插件(并初始化记录器)时,我仍然会遇到类下加载错误。 原因:org.apache

  • 我想知道为什么我的简单spring boot项目不再有效。它基本上直接来自spring示例,其中一个控制器说hello world。我使用的是spring boot starter jetty和spring boot v1.1.10(也尝试了1.2.0)。我有一些使用嵌入式solr的单元测试,所以solr核心被标记为<代码> 我认为测试范围的依赖关系不应该干扰编译范围的依赖关系,并且“仅适用于测试

  • 问题内容: 标题说明了一切。我知道为什么它适用于需要DOM访问的任何内容,但是AJAX请求不一定或通常都需要这样做。 是什么赋予了? 问题答案: 用于副作用。添加事件侦听器,AJAX,更改DOM等。 很少有用;特别是如果您关心服务器端渲染(添加事件侦听器会导致错误和泄漏,以及许多其他可能出错的东西)。 讨论从类组件中删除组件是因为它的作用与构造器相同。它将保留在组件上。

  • 我使用的是和连接器jar版本为0.10.2,kafka版本为0.9.1,flink版本为1.0.0。 当我在IDE中作为独立的主程序运行Java消费者时,它工作得很好。但是当我从运行它时,我不会看到正在使用的消息,也不会看到中JobManager的stdout中的任何日志。请告诉我可能有什么问题。

  • 我试图编写一个树的方法,它将通过节点的名称将一个新节点插入到当前树中。我成功地将一个节点添加到节点的第一级,这指的是根链接,但是当我尝试添加一个与根链接不关联的新节点时,没有任何结果。我明白,插入()方法具有只适用于根链接的逻辑,但我如何修复它,以便其他链接添加新节点。抱歉,如果不完全清楚,英语不是我的母语。 这是我的算法 在第一级查找节点名, 我已经完成了第1点和第2点,如何从我的算法中得出第3

  • 我正在使用gradle 7.02(并使用gradle init选项创建一个使用groovy作为构建语言的单个java项目)-VS代码版本: 版本:1.46.1提交:cd9ea6488829f560dc949a8b2fb789f3cdc05f5d日期:2020-06-17T21:17:14.222Z(11个月前)电子:7.3.1 Chrome:78.0.3904.130节点。js:12.8.1 V8