编译错误,查找符号,包括Pipeline,PCollection,PipelineOptions等

Fra*_*ces 4 google-cloud-dataflow

截至今天,由于错误定位Dataflow SDK for Java中的许多关键类,我正在为现有代码进行构建中断,这些代码曾经正确编译.例如:

[ERROR] /tmp/first-dataflow/src/main/java/com/google/cloud/dataflow/examples/common/DataflowExampleUtils.java:[30,37] cannot find symbol
[ERROR] symbol:   class Pipeline
[ERROR] location: package com.google.cloud.dataflow.sdk
Run Code Online (Sandbox Code Playgroud)

API已更改?

Fra*_*ces 7

使用以前推荐的版本范围[1.0.0,2.0.0]的Google云数据流SDK for Java的现有Maven项目可能会很快获得该SDK的新2.0.0-beta1版本.这个新版本的API与1.x版本不兼容,因此将它与现有代码一起使用会导致这些类型的破坏.

如果您受到影响,请更新您的Maven pom.xml以使用排除2.x系列中任何内容的版本范围,例如使用[1.0.0,1.99),如下所示:

<dependency>
  <groupId>com.google.cloud.dataflow</groupId>
  <artifactId>google-cloud-dataflow-java-sdk-all</artifactId>
  <version>[1.0.0,1.99)</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

这应该可以解决您的编译问题,并允许您继续使用1.x系列中的最新版本(目前为1.9.0).

有关更多信息和更新,您可以关注此GitHub问题.

另外,您可以在其发行说明中了解有关2.0.0-beta1版本的更多信息,包括这些不兼容的API更改.但请注意,这是一个早期预览,并且有关于API稳定性,支持时间表和文档的相应警告.