Flink无法在从IDE运行时加载用户类

时间:2017-12-19 14:56:43

标签: apache-flink flink-streaming

我有一个Flink应用程序并生成一个包含所有依赖项的胖jar我可以使用flink run命令在远程集群上成功提交它。试图在IntelliJ IDE上提交应用程序,我遇到了以下错误:

Caused by: org.apache.flink.streaming.runtime.tasks.StreamTaskException: Cannot load user class: MyFlink$1
ClassLoader info: URL ClassLoader:
    file: '/tmp/blobStore-0fe289f8-b35b-4666-8402-67f9f6a22f55/cache/blob_3fd776b533f2268b6cf7ef1cc62b187bc4513c99' (valid JAR)
Class not resolvable through given classloader.

我将依赖项打包在一个jar文件中,并以createRemoteEnvironment方法传递它。

StreamExecutionEnvironment env = StreamExecutionEnvironment.createRemoteEnvironment(
            "jobmanager", 6123, 2,
            "FlinkProcessing_dependencies.jar"
    );

如何降低此错误?

注意:除了依赖项之外还传递所有用户定义的类,它运行成功,但我不想在每次更改时都传递类jar并导出jar文件类!

0 个答案:

没有答案