adoroszlai commented on a change in pull request #2375: URL: https://github.com/apache/ozone/pull/2375#discussion_r666814837
########## File path: hadoop-ozone/interface-client/pom.xml ########## @@ -51,16 +71,46 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd"> <extensions>true</extensions> <executions> <execution> - <id>compile-protoc</id> + <id>compile-protoc-OmGrpc</id> <goals> <goal>compile</goal> <goal>test-compile</goal> + <goal>compile-custom</goal> + <goal>test-compile-custom</goal> </goals> <configuration> + <protocArtifact> + com.google.protobuf:protoc:${protobuf.version}:exe:${os.detected.classifier} + </protocArtifact> <protoSourceRoot>${basedir}/src/main/proto/</protoSourceRoot> + <includes> + <include>OmClientProtocol.proto</include> + </includes> + <outputDirectory>target/generated-sources/protobuf/java</outputDirectory> + <clearOutputDirectory>false</clearOutputDirectory> + <pluginId>grpc-java</pluginId> + <pluginArtifact> + io.grpc:protoc-gen-grpc-java:${grpc-compile.version}:exe:${os.detected.classifier} + </pluginArtifact> + </configuration> + </execution> + <execution> Review comment: To reduce duplication between the two executions, I suggest: * moving common configuration outside `<executions>` into a plugin-level `<configuration>` * separating `protobuf` and `grpc` compilation: * let `compile-protoc-2` compile all proto files * let `compile-OmGrpc` compile OM proto only with `grpc-java` plugin Something like this: ```xml <plugin> <groupId>org.xolstice.maven.plugins</groupId> <artifactId>protobuf-maven-plugin</artifactId> <version>${protobuf-maven-plugin.version}</version> <extensions>true</extensions> <configuration> <protoSourceRoot>${basedir}/src/main/proto/</protoSourceRoot> <outputDirectory>target/generated-sources/java</outputDirectory> <clearOutputDirectory>false</clearOutputDirectory> </configuration> <executions> <execution> <id>compile-protoc-2</id> <goals> <goal>compile</goal> <goal>test-compile</goal> </goals> <configuration> <protocArtifact> com.google.protobuf:protoc:${protobuf.version}:exe:${os.detected.classifier} </protocArtifact> </configuration> </execution> <execution> <id>compile-grpc</id> <goals> <goal>compile-custom</goal> <goal>test-compile-custom</goal> </goals> <configuration> <includes> <include>OmClientProtocol.proto</include> </includes> <pluginId>grpc-java</pluginId> <pluginArtifact> io.grpc:protoc-gen-grpc-java:${io.grpc.version}:exe:${os.detected.classifier} </pluginArtifact> </configuration> </execution> </executions> </plugin> ``` ########## File path: hadoop-ozone/interface-client/pom.xml ########## @@ -51,16 +71,46 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd"> <extensions>true</extensions> <executions> <execution> - <id>compile-protoc</id> + <id>compile-protoc-OmGrpc</id> <goals> <goal>compile</goal> <goal>test-compile</goal> + <goal>compile-custom</goal> + <goal>test-compile-custom</goal> </goals> <configuration> + <protocArtifact> + com.google.protobuf:protoc:${protobuf.version}:exe:${os.detected.classifier} + </protocArtifact> <protoSourceRoot>${basedir}/src/main/proto/</protoSourceRoot> + <includes> + <include>OmClientProtocol.proto</include> + </includes> + <outputDirectory>target/generated-sources/protobuf/java</outputDirectory> + <clearOutputDirectory>false</clearOutputDirectory> + <pluginId>grpc-java</pluginId> + <pluginArtifact> + io.grpc:protoc-gen-grpc-java:${grpc-compile.version}:exe:${os.detected.classifier} Review comment: I think this should reference `${io.grpc.version}` for consistency. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
