busbey commented on a change in pull request #2: HBASE-22393 HBOSS: Shaded
external dependencies to avoid conflicts with Hadoop and HBase.
URL: https://github.com/apache/hbase-filesystem/pull/2#discussion_r289440855
##########
File path: hbase-oss/pom.xml
##########
@@ -70,56 +71,206 @@
</systemProperties>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>aggregate-into-a-jar-with-relocated-third-parties</id>
+ <phase>package</phase>
+ <goals>
+ <goal>shade</goal>
+ </goals>
+ <configuration>
+ <createDependencyReducedPom>true</createDependencyReducedPom>
+ <!-- XXX If you change the set of dependencies, you should
uncomment this so that
+ you can ensure we don't gain additional transitive
dependencies that need to
+ be relocated. It can't be true when we build or the shade
plugin will drop
+ all of our direct dependencies at provided and test scope.
:/
+ -->
+ <!--
+
<promoteTransitiveDependencies>true</promoteTransitiveDependencies>
+ -->
+ <!-- XXX If you change what gets included, please review the
generated
+ LICENSE/NOTICE files to make sure they're accurate
+ -->
+ <artifactSet>
+ <includes>
+ <include>com.google.*:*:jar:*</include>
+ <include>org.apache.commons:commons-lang3:jar:*</include>
+ <include>org.apache.curator:curator-*:jar:*</include>
+
<include>org.apache.yetus:audience-annotations:jar:*</include>
+ <include>org.apache.zookeeper:zookeeper:jar:*</include>
+ <!-- transitives -->
+ <include>io.netty:netty</include>
+ </includes>
+ </artifactSet>
+ <relocations>
+ <relocation>
+ <pattern>com.google</pattern>
+ <shadedPattern>${shading.prefix}.com.google</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>org.apache.commons</pattern>
+
<shadedPattern>${shading.prefix}.org.apache.commons</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>org.apache.curator</pattern>
+
<shadedPattern>${shading.prefix}.org.apache.curator</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>org.apache.jute</pattern>
+
<shadedPattern>${shading.prefix}.org.apache.jute</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>org.apache.yetus</pattern>
+
<shadedPattern>${shading.prefix}.org.apache.yetus</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>org.apache.zookeeper</pattern>
+
<shadedPattern>${shading.prefix}.org.apache.zookeeper</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>org.codehaus</pattern>
+ <shadedPattern>${shading.prefix}.org.codehaus</shadedPattern>
+ </relocation>
+ <!-- netty family -->
+ <relocation>
+ <pattern>org.jboss.netty</pattern>
+
<shadedPattern>${shading.prefix}.org.jboss.netty</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>io.netty</pattern>
+ <shadedPattern>${shading.prefix}.io.netty</shadedPattern>
Review comment:
IIRC that's a Netty 4 issue and not present in Netty 3. The jar here has no
JNI shared objects, fwiw.
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services