[ https://issues.apache.org/jira/browse/HBASE-13889?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14583841#comment-14583841 ]
Sean Busbey commented on HBASE-13889: ------------------------------------- Depending on how far down the rabid hole you want to go, take a look at HADOOP-11804, where I'm trying to successfully shade Hadoop as a library for HBase. The pom in there for shade has some work around properly excluding and relocating stuff in javax. I believe I have a set of local in-progress changes I haven't updated yet, but I can try to do that by this weekend if it'll help you chase down this issue. {quote} bq. I mean, if you think this adequately solves the problem, I will take a look at hbase-it and see about making a test that reproduces the issue here. Seeking guidance because I am quite new to this whole Java/Maven scene. No problem. Since you have a self-contained project, we can add it to the release testing docs, down in step 7 on https://hbase.apache.org/book.html#maven.release . {quote} Even better would be to add it as another example to [the hbase downstream project|https://github.com/saintstack/hbase-downstreamer] since we already use that. > hbase-shaded-client artifact is missing dependency (therefore, does not work) > ----------------------------------------------------------------------------- > > Key: HBASE-13889 > URL: https://issues.apache.org/jira/browse/HBASE-13889 > Project: HBase > Issue Type: Bug > Components: Client > Affects Versions: 1.1.0, 1.1.0.1 > Environment: N/A? > Reporter: Dmitry Minkovsky > Priority: Blocker > Fix For: 2.0.0, 1.2.0, 1.1.1 > > Attachments: Screen Shot 2015-06-11 at 10.59.55 AM.png > > > The {{hbase-shaded-client}} artifact was introduced in > [HBASE-13517|https://issues.apache.org/jira/browse/HBASE-13517]. Thank you > very much for this, as I am new to Java building and was having a very > slow-moving time resolving conflicts. However, the shaded client artifact > seems to be missing {{javax.xml.transform.TransformerException}}. I examined > the JAR, which does not have this package/class. > Steps to reproduce: > Java: > {code} > package com.mycompany.app; > > > > > > import org.apache.hadoop.conf.Configuration; > > > import org.apache.hadoop.hbase.HBaseConfiguration; > > > import org.apache.hadoop.hbase.client.Connection; > > > import org.apache.hadoop.hbase.client.ConnectionFactory; > > > > > > public class App { > > > public static void main( String[] args ) throws java.io.IOException { > > > > Configuration config = HBaseConfiguration.create(); > > > Connection connection = ConnectionFactory.createConnection(config); > > > } > > > } > {code} > POM: > {code} > <project xmlns="http://maven.apache.org/POM/4.0.0" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > http://maven.apache.org/xsd/maven-4.0.0.xsd"> > > <modelVersion>4.0.0</modelVersion> > > > > > > <groupId>com.mycompany.app</groupId> > > > <artifactId>my-app</artifactId> > > > <version>1.0-SNAPSHOT</version> > > > <packaging>jar</packaging> > > > > > > <name>my-app</name> > > > <url>http://maven.apache.org</url> > > > > > > <properties> > > > <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> > > > </properties> > > > > > > <dependencies> > > > <dependency> > > > <groupId>junit</groupId> > > > <artifactId>junit</artifactId> > > > <version>3.8.1</version> > > > <scope>test</scope> > > > </dependency> > > > <dependency> > > > <groupId>org.apache.hbase</groupId> > > > <artifactId>hbase-shaded-client</artifactId> > > > <version>1.1.0</version> > > > </dependency> > > > </dependencies> > > > </project> > {code} > Run: > {noformat} > $ mvn exec:java -Dexec.mainClass="com.mycompany.app.App" > [INFO] Scanning for projects... > [INFO] > > [INFO] > ------------------------------------------------------------------------ > [INFO] Building my-app 1.0-SNAPSHOT > [INFO] > ------------------------------------------------------------------------ > [INFO] > [INFO] --- exec-maven-plugin:1.4.0:java (default-cli) @ my-app --- > [WARNING] > java.lang.reflect.InvocationTargetException > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:293) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.NoClassDefFoundError: > org/apache/hadoop/hbase/shaded/javax/xml/transform/TransformerException > at com.mycompany.app.App.main(App.java:17) > ... 6 more > Caused by: java.lang.ClassNotFoundException: > org.apache.hadoop.hbase.shaded.javax.xml.transform.TransformerException > at java.net.URLClassLoader$1.run(URLClassLoader.java:366) > at java.net.URLClassLoader$1.run(URLClassLoader.java:355) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:354) > at java.lang.ClassLoader.loadClass(ClassLoader.java:425) > at java.lang.ClassLoader.loadClass(ClassLoader.java:358) > ... 7 more > [INFO] > ------------------------------------------------------------------------ > [INFO] BUILD FAILURE > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 2.388 s > [INFO] Finished at: 2015-06-11T13:23:21-04:00 > [INFO] Final Memory: 10M/111M > [INFO] > ------------------------------------------------------------------------ > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)