O fluxo de dados falha com java.lang.NoSuchMethodError: io.grpc.protobuf.ProtoUtils.marshaller (Lcom / google / protobuf / Message;)

Estou tentando executar um trabalho do Dataflow no Google Cloud. Sempre falha com:

java.lang.NoSuchMethodError: io.grpc.protobuf.ProtoUtils.marshaller (Lcom / google / protobuf / Message;) Lio / grpc / MethodDescriptor $ Marshaller

É um projeto inteligente, aqui estão minhas dependências:

<dependencies>
  <dependency>
    <groupId>com.google.cloud.dataflow</groupId>
    <artifactId>google-cloud-dataflow-java-sdk-all</artifactId>
    <version>1.8.0</version>
  </dependency>   
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-pubsub</artifactId>
    <version>0.4.0</version>
  </dependency>    
  <dependency>
    <groupId>com.google.protobuf</groupId>
    <artifactId>protobuf-java</artifactId>
    <version>3.0.0</version>
  </dependency>       
</dependencies>

Eu tentei várias versões de dependência diferentes. o que estou perdendo?

Tem o mesmo resultado, seja eu executado via exec: java ou através de um jar de sombra.

Rastreio de pilha completa:

(e8dbd0c1b8b8a22): java.lang.NoSuchMethodError: io.grpc.protobuf.ProtoUtils.marshaller (Lcom / google / protobuf / Message;) Lio / grpc / MethodDescriptor $ Marshaller; em com.google.iam.v1.IAMPolicyGrpc. (IAMPolicyGrpc.java:56) em com.google.cloud.pubsub.spi.v1.PublisherSettings $ Builder. (PublisherSettings.java:487) em com.google.cloud.pubsub .spi.v1.PublisherSettings $ Builder.createDefault (PublisherSettings.java:508) em com.google.cloud.pubsub.spi.v1.PublisherSettings $ Builder.access $ 000 (PublisherSettings.java:402) em com.google.cloud. pubsub.spi.v1.PublisherSettings.defaultBuilder (PublisherSettings.java:224) em com.google.cloud.pubsub.spi.DefaultPubSubRpc. (DefaultPubSubRpc.java:138) em com.google.cloud.pubsub.PubSubOptions $ Default (PubSubOptions.java:60) em com.google.cloud.pubsub.PubSubOptions $ DefaultPubSubRpcFactory.create (PubSubOptions.java:54) em com.google.cloud.ServiceOptions.rpc (ServiceOptions.java:399) em com.google. cloud.pubsub.PubSubImpl. (PubSubImpl.java:115) em com.google.cloud.pubsub.PubSubOptions $ DefaultPubSubFactory.create (PubSubOptions.java:43) em com.google.cloud.pubsub.PubSubOptions $ DefaultPubSubImplants bOptions.java:38) em com.google.cloud.ServiceOptions.service (ServiceOptions.java:391) em com.google.lindsaysmith.titan.DataflowBulkLoadNodes $ SendPubSub.sendPubsubMessage (DataflowBulkLoadNodes.java:41) em com.google.linds .titan.DataflowBulkLoadNodes $ SendPubSub.processElement (DataflowBulkLoadNodes.java:32) em com.google.cloud.dataflow.sdk.util.SimpleDoFnRunner.invokeProcessElement (SimpleDoFnRunner.java:49) em com.google.doud.cloud.data .DoFnRunnerBase.processElement (DoFnRunnerBase.java:139) em com.google.cloud.dataflow.sdk.runners.worker.SimpleParDoFn.processElement (SimpleParDoFn.java:190) em com.google.cloud.dataflow.sdk.runners .ForwardingParDoFn.processElement (ForwardingParDoFn.java:42) em com.google.cloud.dataflow.sdk.runners.worker.DataflowWorkerLoggingParDoFn.processElement (DataflowWorkerLoggingParDoFn.java:47) em com.google.doud.com .worker.ParDoOperation.process (ParDoOperation.java:55) em

questionAnswers(1)

yourAnswerToTheQuestion