【发布时间】:2016-06-19 21:18:55
【问题描述】:
在打包使用例如一些 flink 连接器和一些第三方库(用于处理)的 flink 作业时,哪些依赖项应该最终在作业 jar 中,以便可以使用 ("flink run [jarfile]”)?
制作fat-jar 是理想的方法吗?
如果在 scala 中编写作业,是否在 jar 中包含 scala 默认库?
我没有找到任何关于如何在编写作业后为 flink 打包作业的文档。
【问题讨论】:
标签: apache-flink
在打包使用例如一些 flink 连接器和一些第三方库(用于处理)的 flink 作业时,哪些依赖项应该最终在作业 jar 中,以便可以使用 ("flink run [jarfile]”)?
制作fat-jar 是理想的方法吗?
如果在 scala 中编写作业,是否在 jar 中包含 scala 默认库?
我没有找到任何关于如何在编写作业后为 flink 打包作业的文档。
【问题讨论】:
标签: apache-flink
是的,fat-jar 是打包 Flink 作业的标准方式。不得包含 Flink 发行版中包含的所有内容(即 Java 和 Scale 默认库、Flink 核心......)。只有一些未包含的 Flink 库(加上用户定义的外部依赖项)必须包含在 fat-jar 中。
您可以遵循 Flink 文档中的此指南:https://ci.apache.org/projects/flink/flink-docs-release-1.0/apis/cluster_execution.html#linking-with-modules-not-contained-in-the-binary-distribution
【讨论】: