[ https://issues.apache.org/jira/browse/HBASE-26496?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Duo Zhang updated HBASE-26496: ------------------------------ Status: Patch Available (was: In Progress) > [hbase-thirdparty] Exclude the original protobuf-java jar when shading > ---------------------------------------------------------------------- > > Key: HBASE-26496 > URL: https://issues.apache.org/jira/browse/HBASE-26496 > Project: HBase > Issue Type: Bug > Components: hbase-thirdparty > Reporter: Duo Zhang > Assignee: Duo Zhang > Priority: Major > Fix For: thirdparty-4.0.0, thirdparty-3.5.2 > > > We have a patched version of protobuf and we will compile it, and then in > shade we also include the original protobuf-java, where we will get lot of > warnings > {noformat} > WARNING] hbase-shaded-protobuf-3.5.1.jar, protobuf-java-3.17.1.jar define 670 > overlapping class and resource: > [WARNING] - META-INF/MANIFEST.MF > [WARNING] - com.google.protobuf.AbstractMessage > [WARNING] - com.google.protobuf.AbstractMessage$Builder > [WARNING] - com.google.protobuf.AbstractMessage$BuilderParent > [WARNING] - com.google.protobuf.AbstractMessageLite > [WARNING] - com.google.protobuf.AbstractMessageLite$Builder > [WARNING] - > com.google.protobuf.AbstractMessageLite$Builder$LimitedInputStream > [WARNING] - com.google.protobuf.AbstractMessageLite$InternalOneOfEnum > [WARNING] - com.google.protobuf.AbstractParser > [WARNING] - com.google.protobuf.AbstractProtobufList > [WARNING] - 660 more... > [WARNING] maven-shade-plugin has detected that some class files are > [WARNING] present in two or more JARs. When this happens, only one > [WARNING] single version of the class is copied to the uber jar. > [WARNING] Usually this is not harmful and you can skip these warnings, > [WARNING] otherwise try to manually exclude artifacts based on > [WARNING] mvn dependency:tree -Ddetail=true and the above output. > [WARNING] See http://maven.apache.org/plugins/maven-shade-plugin/ > [WARNING] hbase-shaded-protobuf-3.5.1-sources.jar, > protobuf-java-3.17.1-sources.jar define 202 overlapping resources: > [WARNING] - META-INF/MANIFEST.MF > [WARNING] - com/google/protobuf/AbstractMessage.java > [WARNING] - com/google/protobuf/AbstractMessageLite.java > [WARNING] - com/google/protobuf/AbstractParser.java > [WARNING] - com/google/protobuf/AbstractProtobufList.java > [WARNING] - com/google/protobuf/AllocatedBuffer.java > [WARNING] - com/google/protobuf/Android.java > [WARNING] - com/google/protobuf/Any.java > [WARNING] - com/google/protobuf/AnyOrBuilder.java > [WARNING] - com/google/protobuf/AnyProto.java > [WARNING] - 192 more... > [WARNING] maven-shade-plugin has detected that some class files are > [WARNING] present in two or more JARs. When this happens, only one > [WARNING] single version of the class is copied to the uber jar. > [WARNING] Usually this is not harmful and you can skip these warnings, > [WARNING] otherwise try to manually exclude artifacts based on > [WARNING] mvn dependency:tree -Ddetail=true and the above output. > [WARNING] See http://maven.apache.org/plugins/maven-shade-plugin/ > {noformat} > Maybe this is the case why we bundle the incorrect protobuf classes and cause > the failure when running with JDK8. -- This message was sent by Atlassian Jira (v8.20.1#820001)