[ 
https://issues.apache.org/jira/browse/HBASE-13517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14505140#comment-14505140
 ] 

Sean Busbey commented on HBASE-13517:
-------------------------------------

just curious, how big are the shaded jars?

{code}
<artifactSet>
+                                    <includes>
+                                        <include>org.apache.hbase:*</include>
+                                        <include>org.apache.hadoop:*</include>
+                                        
<include>org.apache.zookeeper*</include>
+                                        
<include>com.google.protobuf:*</include>
+                                        <include>io.netty:*</include>
+                                        <include>org.jboss.netty:*</include>
+                                        <include>com.google.guava:*</include>
+                                        <include>org.mortbay.jetty:*</include>
+                                        
<include>org.codehaus.jackson:*</include>
+                                        <include>org.apache.avro:*</include>
+                                        <include>com.sun.jersey:*</include>
+                                        
<include>com.sun.jersey.contribs:*</include>
+                                        <include>tomcat:*</include>
+                                    </includes>
+                                </artifactSet>
{code}

Can we avoid including things in the shaded jar that aren't in 
org.apache.hadoop.hbase or subpackages? That's probably the #1 source of pain 
with shaded artifacts.

{code}
+                                        
<shadedPattern>org.apache.hadoop.hbase.com.google.common
+                                        </shadedPattern>
{code}

nit: could we use something like {{org.apache.hadoop.hbase.shaded.}} as the 
prefix for all of these relocations so that there's a common package / 
directory for all of them?

> Publish a client artifact with shaded dependencies
> --------------------------------------------------
>
>                 Key: HBASE-13517
>                 URL: https://issues.apache.org/jira/browse/HBASE-13517
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.0.0, 1.1.0
>            Reporter: Elliott Clark
>            Assignee: Elliott Clark
>             Fix For: 2.0.0, 1.1.0
>
>         Attachments: HBASE-13517-v1.patch, HBASE-13517-v2.patch, 
> HBASE-13517.patch
>
>
> Guava's moved on. Hadoop has not.
> Jackson moves whenever it feels like it.
> Protobuf moves with breaking point changes.
> While shading all of the time would break people that require the transitive 
> dependencies for MR or other things. Lets provide an artifact with our 
> dependencies shaded. Then users can have the choice to use the shaded version 
> or the non-shaded version.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to