Java 关于理解ApacheBeam的wordCount示例的问题

Java 关于理解ApacheBeam的wordCount示例的问题,java,apache-beam,word-count,Java,Apache Beam,Word Count,我刚开始学习ApacheBeam。对于此处的wordCount示例: 有几件事我不明白,我也无法通过谷歌搜索找到答案 命令行参数是--inputFile和--output。但是,我找不到有关可用参数列表的任何引用,并且我无法将这些参数链接到源代码中的任何位置:。有人能解释一下这些命令行参数是如何工作的吗 在源代码中的WordCountOptions界面中,有四种方法: 字符串getInputFile() void setInputFile(字符串值) 字符串getOutput() void se

我刚开始学习ApacheBeam。对于此处的wordCount示例:

有几件事我不明白,我也无法通过谷歌搜索找到答案

  • 命令行参数是--inputFile和--output。但是,我找不到有关可用参数列表的任何引用,并且我无法将这些参数链接到源代码中的任何位置:。有人能解释一下这些命令行参数是如何工作的吗

  • 在源代码中的WordCountOptions界面中,有四种方法:

    字符串getInputFile()

    void setInputFile(字符串值)

    字符串getOutput()

    void setOutput(字符串值)

    它们不是由任何类实现的,也没有默认实现。因此,我想知道为什么他们可以获取/设置输入和输出


  • 这些问题可能非常简单和明显,但作为一个新手,这是非常令人困惑的,而且在网上缺乏解释。多谢各位

    我想我理解这个问题。这比我想象的要多,它还涉及一些对新手来说不明显的其他概念。我在这里写下了我的理解,希望它能帮助其他困惑的首发球员

  • 命令行参数实际上是用command
    --inputFile=pom.xml
    --output=counts
    设置的。它遵循此处指定的默认解析:

  • 名为
    inputFile
    的属性由下面的getter和setter方法定义:

    String getInputFile()

    void setInputFile(字符串值)

    类似地,名为
    output
    的属性由下面的getter和setter方法定义:

    String getOutput()

    void setOutput(字符串值)

    请参阅此处的定义您自己的管线选项部分:


  • 因此,
    inputFile
    (即pom.xml)和
    output
    (即counts)的参数值可以传递到属性并添加到选项中。代码
    options.getInputFile()
    获取命令行中指定的
    inputFile
    的值,以及
    options.getOutput()
    获取
    output

    您了解java中类和接口之间的区别吗,否则您需要了解这一点。选项记录在你链接到的文件中。不,我知道WordCountOptions是一个接口。我不明白的是,我没有看到实现这四个方法的类,也没有看到接口中的任何默认实现。所以我不明白他们是如何影响这个项目的。谢谢你。我也有一个完全相同的问题,我大致知道发生了什么,但不确定如果没有这些方法的任何实现,它是如何发生的。从阅读您的链接来看,由于Java中的bean,它似乎可以工作,我对此不太熟悉。我猜文档只是告诉你如何使用它,但没有解释它为什么有效。。