[ 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)