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

Josh Elser commented on PHOENIX-3259:
-------------------------------------

bq. would this be difficult? Changes mainly to phoenix-assembly/pom.xml? Does 
it sound like the right approach, or is there a better approach?

I would recommend creating the fat-jar in a new module. Leave the 
phoenix-assembly module just for creating the tarball. Maven works best when 
you create one artifact per module. The shade-plugin, by default, will replace 
the "default' artifact that is created with the one it creates (e.g. with a 
module "phoenix-transaction-manager", 
phoenix-transaction-manager-4.9.0-HBase-1.2-SNAPSHOT.jar would be the fat-jar), 
and then the phoenix-assembly component descriptors can be updated to just 
bring in that new jar to the tarball by the normal groupId:artifactId method.

> Create fat jar for transaction manager
> --------------------------------------
>
>                 Key: PHOENIX-3259
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3259
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>
> Due to the incompatible guava version in HBase (12 instead of 13), the 
> transaction manager will not work by just pointing it to the HBase lib dir. A 
> reasonable alternative would be for Phoenix to build another fat jar 
> specifically for the transaction manager which includes all necessary 
> dependencies (namely guava 13). Then the bin/tephra script (we should rename 
> that to tephra.sh perhaps?) would simply need to have this jar on the 
> classpath.



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

Reply via email to