This is an automated email from the ASF dual-hosted git repository. pboado pushed a commit to branch 5.x-cdh6 in repository https://gitbox.apache.org/repos/asf/phoenix.git
commit 14fcab420f1acc8f4bbc10760f7feb63f735a676 Author: Vincent Poon <vincentp...@apache.org> AuthorDate: Sat Apr 27 01:31:51 2019 +0100 PHOENIX-5213 Phoenix-client improvements: add more relocations, exclude log binding, add source jar --- phoenix-assembly/pom.xml | 22 + .../src/build/components/all-common-jars.xml | 4 +- phoenix-client/pom.xml | 580 ++++++++++++--------- 3 files changed, 346 insertions(+), 260 deletions(-) diff --git a/phoenix-assembly/pom.xml b/phoenix-assembly/pom.xml index f147ad0..0356040 100644 --- a/phoenix-assembly/pom.xml +++ b/phoenix-assembly/pom.xml @@ -42,6 +42,28 @@ <build> <plugins> + <plugin> + <artifactId>exec-maven-plugin</artifactId> + <groupId>org.codehaus.mojo</groupId> + <executions> + <execution> + <id>Symlink to deprecated client jar name</id> + <phase>compile</phase> + <goals> + <goal>exec</goal> + </goals> + <configuration> + <executable>ln</executable> + <workingDirectory>${project.basedir}/../phoenix-client/target</workingDirectory> + <arguments> + <argument>-fnsv</argument> + <argument>phoenix-client-${project.version}.jar</argument> + <argument>phoenix-${project.version}-client.jar</argument> + </arguments> + </configuration> + </execution> + </executions> + </plugin> <!-- No jars created for this module --> <plugin> <groupId>org.apache.maven.plugins</groupId> diff --git a/phoenix-assembly/src/build/components/all-common-jars.xml b/phoenix-assembly/src/build/components/all-common-jars.xml index 08ca29a..d7e8735 100644 --- a/phoenix-assembly/src/build/components/all-common-jars.xml +++ b/phoenix-assembly/src/build/components/all-common-jars.xml @@ -27,7 +27,9 @@ <directory>${project.basedir}/../phoenix-client/target</directory> <outputDirectory>/</outputDirectory> <includes> - <include>phoenix-*-client.jar</include> + <include>phoenix-client-${project.version}.jar</include> + <!-- deprecated jar name, which we now have a symlink for --> + <include>phoenix-${project.version}-client.jar</include> </includes> </fileSet> <fileSet> diff --git a/phoenix-client/pom.xml b/phoenix-client/pom.xml index fb0712b..c1bc549 100644 --- a/phoenix-client/pom.xml +++ b/phoenix-client/pom.xml @@ -57,69 +57,340 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> - <configuration> - <finalName>phoenix-${project.version}-client</finalName> - </configuration> </plugin> + <plugin> <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-install-plugin</artifactId> + <artifactId>maven-shade-plugin</artifactId> + <configuration> + <transformers> + <transformer + implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" /> + <transformer + implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> + <resource>csv-bulk-load-config.properties</resource> + <file> + ${project.basedir}/../config/csv-bulk-load-config.properties + </file> + </transformer> + <transformer + implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> + <resource>README.md</resource> + <file>${project.basedir}/../README.md</file> + </transformer> + <transformer + implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> + <resource>LICENSE.txt</resource> + <file>${project.basedir}/../LICENSE</file> + </transformer> + <transformer + implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> + <resource>NOTICE</resource> + <file>${project.basedir}/../NOTICE</file> + </transformer> + </transformers> + <relocations> + + <!-- COM relocation --> + <relocation> + <pattern>com.beust.jcommander</pattern> + <shadedPattern>${shaded.package}.com.beust.jcommander</shadedPattern> + </relocation> + <relocation> + <pattern>com.codahale</pattern> + <shadedPattern>${shaded.package}.com.codahale</shadedPattern> + </relocation> + <relocation> + <pattern>com.fasterxml</pattern> + <shadedPattern>${shaded.package}.com.fasterxml</shadedPattern> + </relocation> + <relocation> + <pattern>com.google</pattern> + <shadedPattern>${shaded.package}.com.google</shadedPattern> + </relocation> + <relocation> + <pattern>com.jamesmurty</pattern> + <shadedPattern>${shaded.package}.com.jamesmurty</shadedPattern> + </relocation> + <relocation> + <pattern>com.jcraft</pattern> + <shadedPattern>${shaded.package}.com.jcraft</shadedPattern> + </relocation> + <relocation> + <pattern>com.lmax</pattern> + <shadedPattern>${shaded.package}.com.lmax</shadedPattern> + </relocation> + <relocation> + <pattern>com.sun.xml</pattern> + <shadedPattern>${shaded.package}.com.sun.xml</shadedPattern> + </relocation> + <relocation> + <pattern>com.sun.istack</pattern> + <shadedPattern>${shaded.package}.com.sun.istack</shadedPattern> + </relocation> + <relocation> + <pattern>com.sun.research</pattern> + <shadedPattern>${shaded.package}.com.sun.research</shadedPattern> + </relocation> + <relocation> + <pattern>com.sun.activation</pattern> + <shadedPattern>${shaded.package}.com.sun.activation</shadedPattern> + </relocation> + <relocation> + <pattern>com.thoughtworks</pattern> + <shadedPattern>${shaded.package}.com.thoughtworks</shadedPattern> + </relocation> + <relocation> + <pattern>com.yammer</pattern> + <shadedPattern>${shaded.package}.com.yammer</shadedPattern> + </relocation> + + <!-- IO relocations --> + <relocation> + <pattern>io.netty</pattern> + <shadedPattern>${shaded.package}.io.netty</shadedPattern> + </relocation> + + <!-- ORG relocations --> + <relocation> + <pattern>org.antlr</pattern> + <shadedPattern>${shaded.package}.org.antlr</shadedPattern> + </relocation> + <relocation> + <pattern>org.aopalliance</pattern> + <shadedPattern>${shaded.package}.org.aopalliance</shadedPattern> + </relocation> + <relocation> + <pattern>org.codehaus</pattern> + <shadedPattern>${shaded.package}.org.codehaus</shadedPattern> + </relocation> + <relocation> + <pattern>org.fusesource</pattern> + <shadedPattern>${shaded.package}.org.fusesource</shadedPattern> + </relocation> + <relocation> + <pattern>org.hamcrest</pattern> + <shadedPattern>${shaded.package}.org.hamcrest</shadedPattern> + </relocation> + <relocation> + <pattern>org.hsqldb</pattern> + <shadedPattern>${shaded.package}.org.hsqldb</shadedPattern> + </relocation> + <relocation> + <pattern>org.iq80</pattern> + <shadedPattern>${shaded.package}.org.iq80</shadedPattern> + </relocation> + <relocation> + <pattern>org.jamon</pattern> + <shadedPattern>${shaded.package}.org.jamon</shadedPattern> + </relocation> + <relocation> + <pattern>org.jboss</pattern> + <shadedPattern>${shaded.package}.org.jboss</shadedPattern> + </relocation> + <relocation> + <pattern>org.jcodings</pattern> + <shadedPattern>${shaded.package}.org.jcodings</shadedPattern> + </relocation> + <relocation> + <pattern>org.jets3t</pattern> + <shadedPattern>${shaded.package}.org.jets3t</shadedPattern> + </relocation> + <relocation> + <pattern>org.joda</pattern> + <shadedPattern>${shaded.package}.org.joda</shadedPattern> + </relocation> + <relocation> + <pattern>org.joni</pattern> + <shadedPattern>${shaded.package}.org.joni</shadedPattern> + </relocation> + <relocation> + <pattern>org.junit</pattern> + <shadedPattern>${shaded.package}.org.junit</shadedPattern> + </relocation> + <relocation> + <pattern>org.kosmix</pattern> + <shadedPattern>${shaded.package}.org.kosmix</shadedPattern> + </relocation> + <relocation> + <pattern>org.mortbay</pattern> + <shadedPattern>${shaded.package}.org.mortbay</shadedPattern> + </relocation> + <relocation> + <pattern>org.objectweb</pattern> + <shadedPattern>${shaded.package}.org.objectweb</shadedPattern> + </relocation> + <relocation> + <pattern>org.stringtemplate</pattern> + <shadedPattern>${shaded.package}.org.stringtemplate</shadedPattern> + </relocation> + <relocation> + <pattern>org.tukaani</pattern> + <shadedPattern>${shaded.package}.org.tukaani</shadedPattern> + </relocation> + <relocation> + <pattern>org.znerd</pattern> + <shadedPattern>${shaded.package}.org.znerd</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.avro</pattern> + <shadedPattern>${shaded.package}.org.apache.avro</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.commons</pattern> + <shadedPattern>${shaded.package}.org.apache.commons</shadedPattern> + <excludes> + <exclude>org.apache.commons.csv.**</exclude> + <exclude>org.apache.commons.logging.**</exclude> + <exclude>org.apache.commons.configuration.**</exclude> + </excludes> + </relocation> + <relocation> + <pattern>org.apache.directory</pattern> + <shadedPattern>${shaded.package}.org.apache.directory</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.http</pattern> + <shadedPattern>${shaded.package}.org.apache.http</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.jasper</pattern> + <shadedPattern>${shaded.package}.org.apache.jasper</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.jute</pattern> + <shadedPattern>${shaded.package}.org.apache.jute</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.mina</pattern> + <shadedPattern>${shaded.package}.org.apache.mina</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.oro</pattern> + <shadedPattern>${shaded.package}.org.apache.oro</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.taglibs</pattern> + <shadedPattern>${shaded.package}.org.apache.taglibs</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.thrift</pattern> + <shadedPattern>${shaded.package}.org.apache.thrift</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.tools</pattern> + <shadedPattern>${shaded.package}.org.apache.tools</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.twill</pattern> + <shadedPattern>${shaded.package}.org.apache.twill</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.velocity</pattern> + <shadedPattern>${shaded.package}.org.apache.velocity</shadedPattern> + </relocation> + <relocation> + <pattern>org.apache.zookeeper</pattern> + <shadedPattern>${shaded.package}.org.apache.zookeeper</shadedPattern> + </relocation> + + <!-- NET relocations --> + <relocation> + <pattern>net</pattern> + <shadedPattern>${shaded.package}.net</shadedPattern> + </relocation> + + <!-- Misc relocations --> + <relocation> + <pattern>antlr</pattern> + <shadedPattern>${shaded.package}.antlr</shadedPattern> + </relocation> + <relocation> + <pattern>it.unimi</pattern> + <shadedPattern>${shaded.package}.it.unimi</shadedPattern> + </relocation> + <relocation> + <pattern>jline</pattern> + <shadedPattern>${shaded.package}.jline</shadedPattern> + </relocation> + <relocation> + <pattern>junit</pattern> + <shadedPattern>${shaded.package}.junit</shadedPattern> + </relocation> + <relocation> + <pattern>javax.activation</pattern> + <shadedPattern>${shaded.package}.javax.activation</shadedPattern> + </relocation> + <relocation> + <pattern>javax.annotation</pattern> + <shadedPattern>${shaded.package}.javax.annotation</shadedPattern> + </relocation> + <relocation> + <pattern>javax.inject</pattern> + <shadedPattern>${shaded.package}.javax.inject</shadedPattern> + </relocation> + <relocation> + <pattern>javax.xml.bind</pattern> + <shadedPattern>${shaded.package}.javax.xml.bind</shadedPattern> + </relocation> + <relocation> + <pattern>javax.servlet</pattern> + <shadedPattern>${shaded.package}.javax.servlet</shadedPattern> + </relocation> + <relocation> + <pattern>javax.ws</pattern> + <shadedPattern>${shaded.package}.javax.ws</shadedPattern> + </relocation> + </relocations> + </configuration> <executions> <execution> + <id>default-shaded</id> + <phase>package</phase> <goals> - <goal>install-file</goal> + <goal>shade</goal> </goals> - <id>default-install</id> <configuration> - <skip>true</skip> + <shadedArtifactAttached>false</shadedArtifactAttached> + <promoteTransitiveDependencies>true</promoteTransitiveDependencies> + <shadeTestJar>false</shadeTestJar> + <createSourcesJar>true</createSourcesJar> + <dependencyReducedPomLocation>${basedir}/target/pom.xml</dependencyReducedPomLocation> + <artifactSet> + <includes> + <include>*:*</include> + </includes> + <excludes> + <exclude>org.apache.phoenix:phoenix-client</exclude> + <exclude>xom:xom</exclude> + </excludes> + </artifactSet> + <filters> + <filter> + <artifact>*:*</artifact> + <excludes> + <exclude>META-INF/*.SF</exclude> + <exclude>META-INF/*.DSA</exclude> + <exclude>META-INF/*.RSA</exclude> + <exclude>META-INF/license/*</exclude> + <exclude>LICENSE.*</exclude> + <exclude>NOTICE.*</exclude> + </excludes> + </filter> + </filters> </configuration> - <phase>install</phase> </execution> - </executions> - <configuration> - <file>${basedir}/target/phoenix-${project.version}-client.jar</file> - <pomFile>${basedir}/pom.xml</pomFile> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-shade-plugin</artifactId> - <executions> <execution> + <id>embedded-shaded</id> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> - <finalName>phoenix-${project.version}-client</finalName> - <shadedArtifactAttached>false</shadedArtifactAttached> + <shadedClassifierName>embedded</shadedClassifierName> + <shadedArtifactAttached>true</shadedArtifactAttached> <promoteTransitiveDependencies>true</promoteTransitiveDependencies> <shadeTestJar>false</shadeTestJar> - <transformers> - <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/> - <transformer - implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> - <resource>csv-bulk-load-config.properties</resource> - <file> - ${project.basedir}/../config/csv-bulk-load-config.properties - </file> - </transformer> - <transformer - implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> - <resource>README.md</resource> - <file>${project.basedir}/../README.md</file> - </transformer> - <transformer - implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> - <resource>LICENSE.txt</resource> - <file>${project.basedir}/../LICENSE</file> - </transformer> - <transformer - implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> - <resource>NOTICE</resource> - <file>${project.basedir}/../NOTICE</file> - </transformer> - </transformers> <artifactSet> <includes> <include>*:*</include> @@ -127,7 +398,6 @@ <excludes> <exclude>org.apache.phoenix:phoenix-client</exclude> <exclude>xom:xom</exclude> - <exclude>log4j:log4j</exclude> <exclude>org.slf4j:slf4j-log4j12</exclude> </excludes> </artifactSet> @@ -144,219 +414,6 @@ </excludes> </filter> </filters> - - <relocations> - - <!-- COM relocation --> - <relocation> - <pattern>com.codahale</pattern> - <shadedPattern>${shaded.package}.com.codahale</shadedPattern> - </relocation> - <relocation> - <pattern>com.fasterxml</pattern> - <shadedPattern>${shaded.package}.com.fasterxml</shadedPattern> - </relocation> - <relocation> - <pattern>com.jamesmurty</pattern> - <shadedPattern>${shaded.package}.com.jamesmurty</shadedPattern> - </relocation> - <relocation> - <pattern>com.google</pattern> - <shadedPattern>${shaded.package}.com.google</shadedPattern> - <excludes> - <exclude>com.google.protobuf.**</exclude> - </excludes> - </relocation> - <relocation> - <pattern>com.jcraft</pattern> - <shadedPattern>${shaded.package}.com.jcraft</shadedPattern> - </relocation> - <relocation> - <pattern>com.lmax</pattern> - <shadedPattern>${shaded.package}.com.lmax</shadedPattern> - </relocation> - <relocation> - <pattern>com.thoughtworks</pattern> - <shadedPattern>${shaded.package}.com.thoughtworks</shadedPattern> - </relocation> - <relocation> - <pattern>com.yammer</pattern> - <shadedPattern>${shaded.package}.com.yammer</shadedPattern> - </relocation> - - <!-- IO relocations --> - <relocation> - <pattern>io.netty</pattern> - <shadedPattern>${shaded.package}.io.netty</shadedPattern> - </relocation> - - <!-- ORG relocations --> - <relocation> - <pattern>org.antlr</pattern> - <shadedPattern>${shaded.package}.org.antlr</shadedPattern> - </relocation> - <relocation> - <pattern>org.aopalliance</pattern> - <shadedPattern>${shaded.package}.org.aopalliance</shadedPattern> - </relocation> - <relocation> - <pattern>org.codehaus</pattern> - <shadedPattern>${shaded.package}.org.codehaus</shadedPattern> - </relocation> - <relocation> - <pattern>org.fusesource</pattern> - <shadedPattern>${shaded.package}.org.fusesource</shadedPattern> - </relocation> - <relocation> - <pattern>org.hamcrest</pattern> - <shadedPattern>${shaded.package}.org.hamcrest</shadedPattern> - </relocation> - <relocation> - <pattern>org.hsqldb</pattern> - <shadedPattern>${shaded.package}.org.hsqldb</shadedPattern> - </relocation> - <relocation> - <pattern>org.iq80</pattern> - <shadedPattern>${shaded.package}.org.iq80</shadedPattern> - </relocation> - <relocation> - <pattern>org.jamon</pattern> - <shadedPattern>${shaded.package}.org.jamon</shadedPattern> - </relocation> - <relocation> - <pattern>org.jboss</pattern> - <shadedPattern>${shaded.package}.org.jboss</shadedPattern> - </relocation> - <relocation> - <pattern>org.jcodings</pattern> - <shadedPattern>${shaded.package}.org.jcodings</shadedPattern> - </relocation> - <relocation> - <pattern>org.jets3t</pattern> - <shadedPattern>${shaded.package}.org.jets3t</shadedPattern> - </relocation> - <relocation> - <pattern>org.joda</pattern> - <shadedPattern>${shaded.package}.org.joda</shadedPattern> - </relocation> - <relocation> - <pattern>org.joni</pattern> - <shadedPattern>${shaded.package}.org.joni</shadedPattern> - </relocation> - <relocation> - <pattern>org.junit</pattern> - <shadedPattern>${shaded.package}.org.junit</shadedPattern> - </relocation> - <relocation> - <pattern>org.kosmix</pattern> - <shadedPattern>${shaded.package}.org.kosmix</shadedPattern> - </relocation> - <relocation> - <pattern>org.mortbay</pattern> - <shadedPattern>${shaded.package}.org.mortbay</shadedPattern> - </relocation> - <relocation> - <pattern>org.objectweb</pattern> - <shadedPattern>${shaded.package}.org.objectweb</shadedPattern> - </relocation> - <relocation> - <pattern>org.stringtemplate</pattern> - <shadedPattern>${shaded.package}.org.stringtemplate</shadedPattern> - </relocation> - <relocation> - <pattern>org.tukaani</pattern> - <shadedPattern>${shaded.package}.org.tukaani</shadedPattern> - </relocation> - <relocation> - <pattern>org.znerd</pattern> - <shadedPattern>${shaded.package}.org.znerd</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.avro</pattern> - <shadedPattern>${shaded.package}.org.apache.avro</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.commons</pattern> - <shadedPattern>${shaded.package}.org.apache.commons</shadedPattern> - <excludes> - <exclude>org.apache.commons.csv.**</exclude> - <exclude>org.apache.commons.logging.**</exclude> - <exclude>org.apache.commons.configuration.**</exclude> - </excludes> - </relocation> - <relocation> - <pattern>org.apache.directory</pattern> - <shadedPattern>${shaded.package}.org.apache.directory</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.http</pattern> - <shadedPattern>${shaded.package}.org.apache.http</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.jasper</pattern> - <shadedPattern>${shaded.package}.org.apache.jasper</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.jute</pattern> - <shadedPattern>${shaded.package}.org.apache.jute</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.mina</pattern> - <shadedPattern>${shaded.package}.org.apache.mina</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.oro</pattern> - <shadedPattern>${shaded.package}.org.apache.oro</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.taglibs</pattern> - <shadedPattern>${shaded.package}.org.apache.taglibs</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.thrift</pattern> - <shadedPattern>${shaded.package}.org.apache.thrift</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.tools</pattern> - <shadedPattern>${shaded.package}.org.apache.tools</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.twill</pattern> - <shadedPattern>${shaded.package}.org.apache.twill</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.velocity</pattern> - <shadedPattern>${shaded.package}.org.apache.velocity</shadedPattern> - </relocation> - <relocation> - <pattern>org.apache.zookeeper</pattern> - <shadedPattern>${shaded.package}.org.apache.zookeeper</shadedPattern> - </relocation> - - <!-- NET relocations --> - <relocation> - <pattern>net</pattern> - <shadedPattern>${shaded.package}.net</shadedPattern> - </relocation> - - <!-- Misc relocations --> - <relocation> - <pattern>antlr</pattern> - <shadedPattern>${shaded.package}.antlr</shadedPattern> - </relocation> - <relocation> - <pattern>it.unimi</pattern> - <shadedPattern>${shaded.package}.it.unimi</shadedPattern> - </relocation> - <relocation> - <pattern>jline</pattern> - <shadedPattern>${shaded.package}.jline</shadedPattern> - </relocation> - <relocation> - <pattern>junit</pattern> - <shadedPattern>${shaded.package}.junit</shadedPattern> - </relocation> - </relocations> </configuration> </execution> </executions> @@ -370,5 +427,10 @@ <groupId>org.apache.phoenix</groupId> <artifactId>phoenix-core</artifactId> </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-log4j12</artifactId> + <version>1.7.7</version> + </dependency> </dependencies> </project>