flink从集群gui向作业提交参数的正确方法是什么?

sxpgvts3  于 2021-06-25  发布在  Flink
关注(0)|答案(2)|浏览(377)

我的目标是通过集群gui中的“ProgramArguments”字段将参数传递给flink作业的main()函数。

在main()函数中以如下方式访问它们(最好是通过键名):

public static void main(String[] args) throws Exception {

    ParameterTool parameter = ParameterTool.fromArgs(args);

    CustomProps props = new CustomProps (DEFAULT_PROPERTIES_FILE);

    String kafkaAutoOffsetReset = props.getKafkaAutoOffsetReset();
    String cassandraClusterUrl = props.getCassandraClusterUrl();

    if (args.length == 1 && args[0] != null) {

        cassandraClusterUrl = parameter.get("cassandraClusterUrl");
        kafkaAutoOffsetReset = parameter.get("kafkaOffset");
    }

    //Other code...

}

我尝试过“parametertool”,但没有得到任何结果,如果我尝试以下操作:

kafkaAutoOffsetReset = args[0];

只有在“program arguments”字段中输入一个单词时,它才起作用。如果我说:

blah

它说它被设置为“blah”,但如果我尝试其中任何一个:

-kafkaOffset blah
--kafkaOffset blah
-kafkaOffset:blah
-kafkaOffset=blah

我什么也没得到。我知道在cli中,您如何将args传递给jar的一个示例是:

--input file:///home/user/hamlet.txt --output file:///home/user/wordcount_out

但似乎有一个不同的方式,我错过了这样做与图形用户界面,我在寻找相关的文档失败。
热释光;博士
通过flink cluster gui中的“program arguments”字段提交多个参数的正确方法是什么?在main()函数中访问这些参数的正确方法是什么?
谢谢你的帮助!

tjvv9vkg

tjvv9vkg1#

程序参数应该用flink给出,如下所示
--custom.key.one custom.value.one--custom.key.two custom.value.two

pgky5nke

pgky5nke2#

我想出来了。以下是必须如何传递参数:

相关问题