打包flink作业时,例如使用一些flink连接器和一些第三方库(用于处理),哪些依赖项最终应该放在作业jar中,以便可以使用flink-cluster启动它(“flink run” [jar文件]“)?
制作一个胖罐是理想的方法吗?
如果在scala中编写作业,是否在jar中包含了scala默认库?
我没有找到任何关于如何编写flink作业的文档。
答案 0 :(得分:1)
是的,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