如何通过在 Apache Flink 中使用上传的 jar 来提交作业?

How to submit a job, by using an uploaded jar in Apache Flink?

我已经通过 curl 和 get jars 通过 HTTP Post 请求将一个 jar(通过字数统计 java 程序生成)上传到 Apache Flink 网络控制台api 显示上传的 jar。

当我尝试使用那个 jar 提交作业时,它抛出了这个错误:

Caused by: org.apache.flink.client.program.ProgramInvocationException: JAR file does not exist '/tmp/flink-web-8aa36f99-87fb-4fbc-b155-237fd833fc32/:949611ce-345a-4cd5-986b-8ff9b0700852_WordCount.jar'

这是我的 POST 请求的样子:

http://localhost:8081/jars/:949611ce-345a-4cd5-986b-8ff9b0700852_WordCount.jar/run

我关注了他们的官方docs以供参考。我哪里错了?任何帮助都将不胜感激。

确保 jar 文件位于您的临时目录中。路径中有一个':',是否正确?

我最近学习了 REST API,并成功提交了我的 POST 请求

http://host:port/jars/29525e98-3ece-49c1-85d1-5301a5a38900_myjob.jar/run?allowNonRestoredState=false&entry-class=&parallelism=&program-args=&savepointPath=

您还可以通过 Flink Dashboard 提交作业,并通过 Chrome DevToos 在网络选项卡(或类似的东西)检测正确的 url