apache flink作业jar应该排除什么?

fdbelqdn  于 2021-06-25  发布在  Flink
关注(0)|答案(1)|浏览(456)

当打包一个flink作业(例如使用一些flink连接器和一些第三方库(用于处理)时,哪些依赖项应该在jobs jar中结束,以便可以在flink集群中使用(“flink run[jarfile]”)启动它?
做一个胖jar是理想的方法吗?
如果用scala编写作业,jar中是否包含scala默认库?
我没有找到任何文件,说明如何 Package 一份工作的flink一旦写好。

kmbjn2e3

kmbjn2e31#

是的,胖jar是打包flink工作的标准方法。flink发行版中包含的所有内容都不能包含在内(例如,java和scale默认库,flink核心,…)。只有一些未包含的flink库(加上用户定义的外部依赖项)必须包含在fatjar中。
您可以遵循flink文档中的指南:https://ci.apache.org/projects/flink/flink-docs-release-1.0/apis/cluster_execution.html#linking-不包含在二进制分布中的模块
这可能也有帮助:https://ci.apache.org/projects/flink/flink-docs-release-1.0/apis/common/index.html#program-打包和分布式执行

相关问题