Details
-
Task
-
Status: Resolved
-
P1
-
Resolution: Fixed
-
None
-
None
Description
Beam 2.36 release candidate had problem for Maven users.
Could not resolve version conflict among [
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> org.apache.beam:beam-sdks-java-extensions-google-cloud-platform-core:jar:2.36.0 -> com.google.cloud.bigdataoss:gcsio:jar:2.2.4 -> io.grpc:grpc-netty-shaded:jar:1.41.1
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.api:gax-grpc:jar:2.8.1 -> io.grpc:grpc-netty-shaded:jar:1.42.1
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.api:gax-grpc:jar:2.8.1 -> io.grpc:grpc-xds:jar:1.42.1 -> io.grpc:grpc-netty-shaded:jar:[1.42.1,1.42.1]
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.cloud:google-cloud-bigquerystorage:jar:2.8.1 -> io.grpc:grpc-netty-shaded:jar:1.43.2
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.cloud.bigtable:bigtable-client-core:jar:1.25.1 -> com.google.cloud:google-cloud-bigtable:jar:1.27.1 -> io.grpc:grpc-netty-shaded:jar:1.39.0
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.cloud.bigtable:bigtable-client-core:jar:1.25.1 -> io.grpc:grpc-netty-shaded:jar:1.39.0
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.cloud:google-cloud-firestore:jar:3.0.10 -> io.grpc:grpc-netty-shaded:jar:1.43.2
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.cloud:google-cloud-pubsublite:jar:1.4.8 -> io.grpc:grpc-netty-shaded:jar:1.43.2
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.cloud:google-cloud-pubsub:jar:1.115.1 -> io.grpc:grpc-netty-shaded:jar:1.43.2
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> com.google.cloud:google-cloud-spanner:jar:6.17.4 -> io.grpc:grpc-netty-shaded:jar:1.43.2
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> io.grpc:grpc-alts:jar:1.43.2 -> io.grpc:grpc-netty-shaded:jar:[1.43.2,1.43.2]
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.36.0 -> io.grpc:grpc-netty-shaded:jar:1.43.2
]
How to confirm the effect?
suztomo@suztomo:~/beam$ ./gradlew -Ppublishing -PskipCheckerFramework -p sdks/java/io/google-cloud-platform publishMavenJavaPublicationToMavenLocal
Before the change
~/.m2/repository/org/apache/beam/beam-sdks-java-io-google-cloud-platform/2.37.0-SNAPSHOT/beam-sdks-java-io-google-cloud-platform-2.37.0-SNAPSHOT.pom
<dependency> <groupId>com.google.api</groupId> <artifactId>gax-grpc</artifactId> <scope>compile</scope> <exclusions> <exclusion> <groupId>org.checkerframework</groupId> <artifactId>jdk8</artifactId> </exclusion> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava-jdk5</artifactId> </exclusion> <exclusion> <groupId>jdk.tools</groupId> <artifactId>jdk.tools</artifactId> </exclusion> <exclusion> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-lite</artifactId> </exclusion> <exclusion> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-all</artifactId> </exclusion> </exclusions> </dependency>
After the change (See the exclusion for grpc-netty-shaded)
<dependency> <groupId>com.google.api</groupId> <artifactId>gax-grpc</artifactId> <scope>compile</scope> <exclusions> <exclusion> <groupId>org.checkerframework</groupId> <artifactId>jdk8</artifactId> </exclusion> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava-jdk5</artifactId> </exclusion> <exclusion> <groupId>jdk.tools</groupId> <artifactId>jdk.tools</artifactId> </exclusion> <exclusion> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-lite</artifactId> </exclusion> <exclusion> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-all</artifactId> </exclusion> <exclusion> <groupId>io.grpc</groupId> <artifactId>grpc-netty-shaded</artifactId> </exclusion> </exclusions>
and see the POM file in .m2/repository?
./gradlew -Ppublishing -PskipCheckerFramework -PjavaLinkageArtifactIds=beam-runners-google-cloud-dataflow-java -PjavaLinkageWriteBaseline=baseline.txt :checkJavaLinkage