代码开始如下:

return pcol.apply(ParDo.named("FindTheBug")
        .withSideInputs(foo)
        .withSideInputs(bar(
        .of(new DoFn<T, U>() {
            F myFoo = c.sideInput(foo);
            B myBar = c.sideInput(bar);


声明了这些侧面输入,为什么Dataflow看不到它们?

最佳答案

事实证明,多次调用withSideInputs是不允许的。该代码应改为如下所示:

return pcol.apply(ParDo.named("FindTheBug")
        .withSideInputs(foo, bar)
        .of(new DoFn<T, U>() {
            // now you can access both side inputs


提示是该函数的名称为“ withSideInputs”,而不是“ withSideInput”。这不止一次使我绊倒了,而且不能用谷歌搜索,所以我想把它写下来,以防别人碰到这个!

关于java - 即使我通过了 View ,“使用未知 View 调用sideInput()”异常?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32213942/

10-09 16:37