| <?xml version="1.0"?> | |
| <!-- | |
| Licensed to the Apache Software Foundation (ASF) under one | |
| or more contributor license agreements. See the NOTICE file | |
| distributed with this work for additional information | |
| regarding copyright ownership. The ASF licenses this file | |
| to you under the Apache License, Version 2.0 (the | |
| "License"); you may not use this file except in compliance | |
| with the License. You may obtain a copy of the License at | |
| http://www.apache.org/licenses/LICENSE-2.0 | |
| Unless required by applicable law or agreed to in writing, software | |
| distributed under the License is distributed on an "AS IS" BASIS, | |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| See the License for the specific language governing permissions and | |
| limitations under the License. | |
| --> | |
| <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> | |
| <parent> | |
| <groupId>org.apache.drill.exec</groupId> | |
| <artifactId>exec-parent</artifactId> | |
| <version>1.23.0-SNAPSHOT</version> | |
| </parent> | |
| <artifactId>drill-jdbc-all</artifactId> | |
| <name>Drill : Exec : JDBC JAR with all dependencies</name> | |
| <!-- Since we are packaging hadoop dependencies under the namespace with "oadd." prefix by default, | |
| "package.namespace.prefix" equals to "oadd.". It can be overridden if necessary within any profile --> | |
| <properties> | |
| <package.namespace.prefix>oadd.</package.namespace.prefix> | |
| <jdbc-all-jar.maxsize>63000000</jdbc-all-jar.maxsize> | |
| </properties> | |
| <dependencies> | |
| <!-- | |
| Notes for excluding unwanted code from the JDBC driver to keep its | |
| size down. | |
| First use conventional Maven exclusions, most commonly required under | |
| drill-java-exec, to try to exclude the dependency. If you cannot see | |
| the code you want exclude in this module's mvn:dependency-tree under | |
| a dependency where you could add an exclusion then you will need to | |
| use exclusion rules in the maven-shade-plugin instead. | |
| Once you've excluded something that was previously present in the JDBC | |
| driver you need to test it. Note that neither the JDBC unit tests nor | |
| drill-embedded exercise the JDBC driver JAR produced by *this module*, | |
| even though they both connect to Drill using JDBC. So to test you need | |
| to launch a JDBC client like DBeaver or a short Java CLI program that | |
| loads the driver JAR created by this module. | |
| --> | |
| <dependency> | |
| <groupId>org.slf4j</groupId> | |
| <artifactId>slf4j-api</artifactId> | |
| <version>${slf4j.version}</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>org.apache.drill</groupId> | |
| <artifactId>drill-common</artifactId> | |
| <version>${project.version}</version> | |
| <exclusions> | |
| <exclusion> | |
| <groupId>io.dropwizard.metrics</groupId> | |
| <artifactId>metrics-servlets</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.eclipse.jetty</groupId> | |
| <artifactId>*</artifactId> | |
| </exclusion> | |
| </exclusions> | |
| </dependency> | |
| <dependency> | |
| <groupId>org.apache.drill.exec</groupId> | |
| <artifactId>drill-java-exec</artifactId> | |
| <version>${project.version}</version> | |
| <exclusions> | |
| <exclusion> | |
| <groupId>log4j</groupId> | |
| <artifactId>log4j</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.javassist</groupId> | |
| <artifactId>javassist</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.apache.hbase</groupId> | |
| <artifactId>hbase</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.bouncycastle</groupId> | |
| <artifactId>bcpkix-jdk15on</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>commons-codec</groupId> | |
| <artifactId>commons-codec</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.sun.jersey</groupId> | |
| <artifactId>jersey-core</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.sun.jersey</groupId> | |
| <artifactId>jersey-server</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.glassfish.jersey.core</groupId> | |
| <artifactId>jersey-common</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.glassfish.jersey.containers</groupId> | |
| <artifactId>jersey-container-jetty-servlet</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.glassfish.jersey.media</groupId> | |
| <artifactId>jersey-media-multipart</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.glassfish.jersey.ext</groupId> | |
| <artifactId>jersey-mvc-freemarker</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.glassfish.jersey.media</groupId> | |
| <artifactId>jersey-media-json-jackson</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.glassfish.jersey.inject</groupId> | |
| <artifactId>jersey-hk2</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>*</artifactId> | |
| <groupId>org.eclipse.jetty</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.apache.hadoop</groupId> | |
| <artifactId>hadoop-client</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.apache.avro</groupId> | |
| <artifactId>avro-mapred</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>parquet-hadoop</artifactId> | |
| <groupId>org.apache.parquet</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>parquet-column</artifactId> | |
| <groupId>org.apache.parquet</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>parquet-common</artifactId> | |
| <groupId>org.apache.parquet</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>infinispan-core</artifactId> | |
| <groupId>org.infinispan</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>asm-util</artifactId> | |
| <groupId>org.ow2.asm</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>codemodel</artifactId> | |
| <groupId>com.sun.codemodel</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>asm-commons</artifactId> | |
| <groupId>org.ow2.asm</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>infinispan-tree</artifactId> | |
| <groupId>org.infinispan</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>jetty-util</artifactId> | |
| <groupId>org.eclipse.jetty</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>freemarker</artifactId> | |
| <groupId>org.freemarker</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>hazelcast</artifactId> | |
| <groupId>com.hazelcast</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>nl.basjes.parse.httpdlog</groupId> | |
| <artifactId>httpdlog-parser</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.kohsuke</groupId> | |
| <artifactId>libpam4j</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>sqlline</groupId> | |
| <artifactId>sqlline</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>stream</artifactId> | |
| <groupId>com.clearspring.analytics</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.honton.chas.hocon</groupId> | |
| <artifactId>jackson-dataformat-hocon</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.owasp.encoder</groupId> | |
| <artifactId>encoder</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.dropbox.core</groupId> | |
| <artifactId>dropbox-core-sdk</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.box</groupId> | |
| <artifactId>box-java-sdk</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.apache.commons</groupId> | |
| <artifactId>commons-compress</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.apache.ws.xmlschema</groupId> | |
| <artifactId>xmlschema-core</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.apache.ws.xmlschema</groupId> | |
| <artifactId>xmlschema-walker</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>io.airlift</groupId> | |
| <artifactId>aircompressor</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>io.swagger.core.v3</groupId> | |
| <artifactId>swagger-jaxrs2</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>io.swagger.core.v3</groupId> | |
| <artifactId>swagger-jaxrs2-servlet-initializer-v2</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.fasterxml.jackson.jaxrs</groupId> | |
| <artifactId>jackson-jaxrs-json-provider</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.fasterxml.jackson.jaxrs</groupId> | |
| <artifactId>jackson-jaxrs-base</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.squareup.okhttp3</groupId> | |
| <artifactId>okhttp</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.tdunning</groupId> | |
| <artifactId>t-digest</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.bettercloud</groupId> | |
| <artifactId>vault-java-driver</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.esri.geometry</groupId> | |
| <artifactId>esri-geometry-api</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.yahoo.datasketches</groupId> | |
| <artifactId>sketches-core</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>${calcite.groupId}</groupId> | |
| <artifactId>calcite-core</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>${calcite.groupId}</groupId> | |
| <artifactId>calcite-linq4j</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>net.sf.jpam</groupId> | |
| <artifactId>jpam</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.beust</groupId> | |
| <artifactId>jcommander</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.codehaus.janino</groupId> | |
| <artifactId>*</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>com.thoughtworks.paranamer</groupId> | |
| <artifactId>paranamer</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>javax.servlet</groupId> | |
| <artifactId>*</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>javax.servlet.jsp</groupId> | |
| <artifactId>*</artifactId> | |
| </exclusion> | |
| <exclusion> | |
| <groupId>org.apache.kerby</groupId> | |
| <artifactId>*</artifactId> | |
| </exclusion> | |
| </exclusions> | |
| </dependency> | |
| <dependency> | |
| <groupId>org.apache.drill.exec</groupId> | |
| <artifactId>drill-jdbc</artifactId> | |
| <version>${project.version}</version> | |
| <exclusions> | |
| <exclusion> | |
| <artifactId>drill-storage-hive-core</artifactId> | |
| <groupId>org.apache.drill.contrib.storage-hive</groupId> | |
| </exclusion> | |
| <exclusion> | |
| <artifactId>foodmart-data-json</artifactId> | |
| <groupId>net.hydromatic</groupId> | |
| </exclusion> | |
| </exclusions> | |
| </dependency> | |
| <!-- Test Dependencies --> | |
| <dependency> | |
| <groupId>org.apache.drill</groupId> | |
| <artifactId>drill-common</artifactId> | |
| <classifier>tests</classifier> | |
| <version>${project.version}</version> | |
| <scope>provided</scope> | |
| </dependency> | |
| <dependency> | |
| <groupId>org.apache.drill.exec</groupId> | |
| <artifactId>drill-java-exec</artifactId> | |
| <classifier>tests</classifier> | |
| <version>${project.version}</version> | |
| <scope>provided</scope> | |
| </dependency> | |
| </dependencies> | |
| <build> | |
| <resources> | |
| <resource> | |
| <directory>src/main/resources</directory> | |
| <filtering>true</filtering> | |
| </resource> | |
| </resources> | |
| <plugins> | |
| <plugin> | |
| <artifactId>maven-antrun-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>define-classpath</id> | |
| <phase>integration-test</phase> | |
| <goals> | |
| <goal>run</goal> | |
| </goals> | |
| <configuration> | |
| <exportAntProperties>true</exportAntProperties> | |
| <target> | |
| <property name="app.class.path" refid="maven.test.classpath" /> | |
| </target> | |
| </configuration> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-failsafe-plugin</artifactId> | |
| <version>3.1.2</version> | |
| <executions> | |
| <execution> | |
| <goals> | |
| <goal>integration-test</goal> | |
| <goal>verify</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| <configuration> | |
| <argLine>-Xms512m -Xmx3g -Ddrill.exec.http.enabled=false -Djava.net.preferIPv4Stack=true | |
| -Ddrill.exec.sys.store.provider.local.write=false | |
| -Dorg.apache.drill.exec.server.Drillbit.system_options="org.apache.drill.exec.compile.ClassTransformer.scalar_replacement=on" | |
| -XX:MaxDirectMemorySize=3072M | |
| ${junit.args} -ea | |
| </argLine> | |
| <additionalClasspathElements> | |
| <additionalClasspathElements>${settings.localRepository}/org/junit/vintage/junit-vintage-engine/${junit.version}/junit-vintage-engine-${junit.version}.jar | |
| </additionalClasspathElements> | |
| <additionalClasspathElements>${settings.localRepository}/org/hamcrest/hamcrest/${hamcrest.version}/hamcrest-${hamcrest.version}.jar</additionalClasspathElements> | |
| <additionalClasspathElements>${project.build.directory}/test-classes/</additionalClasspathElements> | |
| </additionalClasspathElements> | |
| <systemPropertyVariables> | |
| <java.io.tmpdir>${project.build.directory}</java.io.tmpdir> | |
| <app.class.path>${app.class.path}</app.class.path> | |
| <project.version>${project.version}</project.version> | |
| </systemPropertyVariables> | |
| <useSystemClassLoader>false</useSystemClassLoader> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-shade-plugin</artifactId> | |
| <configuration> | |
| <shadedArtifactAttached>false</shadedArtifactAttached> | |
| <createDependencyReducedPom>true</createDependencyReducedPom> | |
| <!-- TODO DRILL-4336: try to move the dependencyReducedPom out of the default location (the module root). | |
| Putting it here caused the target directory to be run as a submodule (oddly | |
| only when trying to run the maven release goal) --> | |
| <!--dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation--> | |
| <!-- TODO DRILL-4336: an attempt to fix the issue by moving the file elsewhere, had issues executing | |
| but may be able to be modified to to fix the issue--> | |
| <!--dependencyReducedPomLocation>${project.build.directory}/generated/shade/dependency-reduced-pom.xml</dependencyReducedPomLocation--> | |
| <minimizeJar>false</minimizeJar> | |
| <!-- Exclude dependencies at artifact level. Format is "groupId:artifactId[[:type]:classifier]" --> | |
| <artifactSet> | |
| <includes> | |
| <include>*:*</include> | |
| </includes> | |
| <excludes> | |
| <!-- Please keep this list sorted. --> | |
| <exclude>antlr:*</exclude> | |
| <exclude>com.beust:*</exclude> | |
| <exclude>com.dropbox.*</exclude> | |
| <exclude>com.github.stefanbirkner</exclude> | |
| <exclude>com.google.code.findbugs:jsr305:*</exclude> | |
| <exclude>com.googlecode.json-simple:*</exclude> | |
| <exclude>commons-beanutils:commons-beanutils-core:jar:*</exclude> | |
| <exclude>commons-beanutils:commons-beanutils:jar:*</exclude> | |
| <exclude>commons-cli:commons-cli</exclude> | |
| <exclude>commons-io:commons-io</exclude> | |
| <exclude>com.nimbusds:*</exclude> | |
| <exclude>com.twitter:*</exclude> | |
| <exclude>com.univocity:*</exclude> | |
| <exclude>dnsjava:dnsjava:jar:*</exclude> | |
| <exclude>dom4j:*</exclude> | |
| <exclude>io.netty:netty-tcnative-classes:jar:*</exclude> | |
| <exclude>io.netty:netty-tcnative:jar:*</exclude> | |
| <exclude>io.protostuff:*</exclude> | |
| <exclude>javax.activation:activation</exclude> | |
| <exclude>javax.inject:*</exclude> | |
| <exclude>javax.xml.bind:jaxb-api</exclude> | |
| <exclude>javax.xml.stream:stax-api</exclude> | |
| <exclude>jline:*</exclude> | |
| <exclude>net.hydromatic:linq4j</exclude> | |
| <exclude>org.apache.avro:*</exclude> | |
| <exclude>org.apache.commons:commons-collections4</exclude> | |
| <exclude>org.apache.hadoop:hadoop-yarn-client</exclude> | |
| <exclude>org.apache.parquet:*</exclude> | |
| <exclude>org.apache.velocity:*</exclude> | |
| <exclude>org.apache.yetus:*</exclude> | |
| <exclude>org.eclipse.jetty:*</exclude> | |
| <exclude>org.eclipse.jetty.websocket:*</exclude> | |
| <exclude>org.hamcrest:hamcrest-core</exclude> | |
| <exclude>org.hibernate:*</exclude> | |
| <exclude>org.mockito:mockito-core</exclude> | |
| <exclude>org.mongodb:*</exclude> | |
| <exclude>org.msgpack:*</exclude> | |
| <exclude>org.objenesis:objenesis</exclude> | |
| <exclude>org.ow2.asm:*</exclude> | |
| <exclude>org.pentaho:*</exclude> | |
| <exclude>org.slf4j:jul-to-slf4j</exclude> | |
| <exclude>org.tukaani:*</exclude> | |
| <exclude>org.xerial.snappy:*</exclude> | |
| <exclude>xalan:*</exclude> | |
| <exclude>xerces:*</exclude> | |
| </excludes> | |
| </artifactSet> | |
| <relocations> | |
| <!-- Relocate Drill classes to minimize classloader hell. --> | |
| <relocation> | |
| <pattern>org.apache.drill.exec.</pattern> | |
| <shadedPattern>oadd.org.apache.drill.exec.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.drill.common.</pattern> | |
| <shadedPattern>oadd.org.apache.drill.common.</shadedPattern> | |
| </relocation> | |
| <!-- Move dependencies out of path --> | |
| <relocation> | |
| <pattern>antlr.</pattern> | |
| <shadedPattern>oadd.antlr.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>antlr.</pattern> | |
| <shadedPattern>oadd.antlr.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>io.</pattern> | |
| <shadedPattern>oadd.io.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>javacc.</pattern> | |
| <shadedPattern>oadd.javacc.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>java_cup.</pattern> | |
| <shadedPattern>oadd.java_cup.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>javassist.</pattern> | |
| <shadedPattern>oadd.javassist.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>jline.</pattern> | |
| <shadedPattern>oadd.jline.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>license.</pattern> | |
| <shadedPattern>oadd.license.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>net.</pattern> | |
| <shadedPattern>oadd.net.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>parquet.</pattern> | |
| <shadedPattern>oadd.parquet.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>test.</pattern> | |
| <shadedPattern>oadd.test.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>trax.</pattern> | |
| <shadedPattern>oadd.trax.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.antlr.</pattern> | |
| <shadedPattern>oadd.org.antlr.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.codehaus.</pattern> | |
| <shadedPattern>oadd.org.codehaus.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.eigenbase.</pattern> | |
| <shadedPattern>oadd.org.eigenbase.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.hamcrest.</pattern> | |
| <shadedPattern>oadd.org.hamcrest.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.jboss.</pattern> | |
| <shadedPattern>oadd.org.jboss.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.joda.</pattern> | |
| <shadedPattern>oadd.org.joda.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.json.</pattern> | |
| <shadedPattern>oadd.org.json.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.mockito.</pattern> | |
| <shadedPattern>oadd.org.mockito.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.msgpack.</pattern> | |
| <shadedPattern>oadd.org.msgpack.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.objectweb.</pattern> | |
| <shadedPattern>oadd.org.objectweb.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.objensis.</pattern> | |
| <shadedPattern>oadd.org.objensis.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.pentaho.</pattern> | |
| <shadedPattern>oadd.org.pentaho.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.reflections.</pattern> | |
| <shadedPattern>oadd.org.reflections.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.tukaani.</pattern> | |
| <shadedPattern>oadd.org.tukaani.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.xerial.</pattern> | |
| <shadedPattern>oadd.org.xerial.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.beust.</pattern> | |
| <shadedPattern>oadd.com.beust.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.carrotsearch.</pattern> | |
| <shadedPattern>oadd.com.carrotsearch.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.codahale.</pattern> | |
| <shadedPattern>oadd.com.codahale.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.dyuproject.</pattern> | |
| <shadedPattern>oadd.com.dyuproject.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.fasterxml.</pattern> | |
| <shadedPattern>oadd.com.fasterxml.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.google.</pattern> | |
| <shadedPattern>oadd.com.google.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.thoughtworks.</pattern> | |
| <shadedPattern>oadd.com.thoughtworks.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.typesafe.</pattern> | |
| <shadedPattern>oadd.com.typesafe.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.univocity.</pattern> | |
| <shadedPattern>oadd.com.univocity.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.avro.</pattern> | |
| <shadedPattern>oadd.org.apache.avro.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.bcel.</pattern> | |
| <shadedPattern>oadd.org.apache.bcel.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.calcite.</pattern> | |
| <shadedPattern>oadd.org.apache.calcite.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.commons.</pattern> | |
| <shadedPattern>oadd.org.apache.commons.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.curator.</pattern> | |
| <shadedPattern>oadd.org.apache.curator.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.html.</pattern> | |
| <shadedPattern>oadd.org.apache.html.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.jute.</pattern> | |
| <shadedPattern>oadd.org.apache.jute.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.log4j.</pattern> | |
| <shadedPattern>oadd.org.apache.log4j.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.regexp.</pattern> | |
| <shadedPattern>oadd.org.apache.regexp.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.velocity.</pattern> | |
| <shadedPattern>oadd.org.apache.velocity.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.wml.</pattern> | |
| <shadedPattern>oadd.org.apache.wml.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.xalan.</pattern> | |
| <shadedPattern>oadd.org.apache.xalan.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.xerces.</pattern> | |
| <shadedPattern>oadd.org.apache.xerces.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.xml.</pattern> | |
| <shadedPattern>oadd.org.apache.xml.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.xmlcommons.</pattern> | |
| <shadedPattern>oadd.org.apache.xmlcommons.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.xpath.</pattern> | |
| <shadedPattern>oadd.org.apache.xpath.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.zookeeper.</pattern> | |
| <shadedPattern>oadd.org.apache.zookeeper.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>org.apache.hadoop.</pattern> | |
| <shadedPattern>oadd.org.apache.hadoop.</shadedPattern> | |
| </relocation> | |
| <relocation> | |
| <pattern>com.ctc.wstx.</pattern> | |
| <shadedPattern>oadd.com.ctc.wstx.</shadedPattern> | |
| </relocation> | |
| </relocations> | |
| <transformers> | |
| <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> | |
| <resource>drill-module.conf</resource> | |
| </transformer> | |
| </transformers> | |
| <!-- Remove the particular directory or class level dependency from final jar --> | |
| <filters> | |
| <filter> | |
| <artifact>*:*</artifact> | |
| <excludes> | |
| <exclude>bootstrap-storage-plugins.json</exclude> | |
| <exclude>codegen/**</exclude> | |
| <exclude>com/google/common/cache</exclude> | |
| <exclude>com/google/common/collect/Standard*</exclude> | |
| <exclude>com/google/common/collect/Tree*</exclude> | |
| <exclude>com/google/common/math</exclude> | |
| <exclude>com/google/common/net</exclude> | |
| <exclude>com/google/common/primitives</exclude> | |
| <exclude>com/google/common/reflect</exclude> | |
| <exclude>com/google/common/util</exclude> | |
| <exclude>com/jcraft/**</exclude> | |
| <exclude>**/*.DSA</exclude> | |
| <exclude>hello/**</exclude> | |
| <exclude>**/*.java</exclude> | |
| <exclude>javax/activation/**</exclude> | |
| <exclude>javax/annotation-api/**</exclude> | |
| <exclude>javax/*</exclude> | |
| <exclude>javax/inject/**</exclude> | |
| <exclude>javax/json/**</exclude> | |
| <exclude>javax/servlet/**</exclude> | |
| <exclude>javax/ws/**</exclude> | |
| <exclude>**/LICENSE.txt</exclude> | |
| <exclude>**/logback.xml</exclude> | |
| <exclude>**/mapr/**</exclude> | |
| <exclude>META-INF/ASL2.0</exclude> | |
| <exclude>META-INF/drill-module-scan/**</exclude> | |
| <exclude>META-INF/jboss-beans.xml</exclude> | |
| <exclude>META-INF/license/**</exclude> | |
| <exclude>META-INF/maven/**</exclude> | |
| <exclude>META-INF/native/**</exclude> | |
| <exclude>META-INF/NOTICE.txt</exclude> | |
| <exclude>META-INF/**/*.properties</exclude> | |
| <exclude>META-INF/services/com.fasterxml.*</exclude> | |
| <exclude>META-INF/services/javax.ws.*</exclude> | |
| <exclude>META-INF/versions/22/**</exclude> | |
| <exclude>module-info.class</exclude> | |
| <exclude>org/apache/commons/pool2/**</exclude> | |
| <exclude>org/apache/directory/**</exclude> | |
| <exclude>org/apache/drill/exec/compile/**</exclude> | |
| <exclude>org/apache/drill/exec/expr/annotations/**</exclude> | |
| <exclude>org/apache/drill/exec/expr/fn/**</exclude> | |
| <exclude>org/apache/drill/exec/physical/**</exclude> | |
| <exclude>org/apache/drill/exec/planner/**</exclude> | |
| <exclude>org/apache/drill/exec/proto/beans/**</exclude> | |
| <exclude>org/apache/drill/exec/rpc/control/**</exclude> | |
| <exclude>org/apache/drill/exec/rpc/data/**</exclude> | |
| <exclude>org/apache/drill/exec/server/rest/**</exclude> | |
| <exclude>org/apache/drill/exec/store/**</exclude> | |
| <exclude>org/apache/drill/exec/work/**</exclude> | |
| <exclude>org/apache/drill/metastore/**</exclude> | |
| <exclude>org/apache/hadoop/crypto/**</exclude> | |
| <exclude>org/apache/hadoop/ha/**</exclude> | |
| <exclude>org/apache/hadoop/http/**</exclude> | |
| <exclude>org/apache/hadoop/ipc/**</exclude> | |
| <exclude>org/apache/hadoop/jmx/**</exclude> | |
| <exclude>org/apache/hadoop/log/**</exclude> | |
| <exclude>org/apache/hadoop/metrics/**</exclude> | |
| <exclude>org/apache/hadoop/record/**</exclude> | |
| <exclude>org/apache/hadoop/service/**</exclude> | |
| <exclude>org/apache/hadoop/tools/**</exclude> | |
| <exclude>org/apache/hadoop/tracing/**</exclude> | |
| <exclude>org/apache/hadoop/yarn/**</exclude> | |
| <exclude>org/apache/hbase/thirdparty/javax/**</exclude> | |
| <exclude>org/apache/http/**</exclude> | |
| <exclude>org/apache/parquet</exclude> | |
| <exclude>**/org.codehaus.commons.compiler.properties</exclude> | |
| <exclude>org/yaml/**</exclude> | |
| <exclude>rest/**</exclude> | |
| <exclude>**/*.RSA</exclude> | |
| <exclude>**/*.SF</exclude> | |
| <exclude>*.tokens</exclude> | |
| <exclude>webapps/**</exclude> | |
| </excludes> | |
| </filter> | |
| <!-- This file is used to automatically load given jdbc driver without calling Class.forName(). | |
| Excluding the Avatica service file which is conflicting with the Drill one. --> | |
| <filter> | |
| <artifact>org.apache.calcite.avatica:*</artifact> | |
| <excludes> | |
| <exclude>META-INF/services/java.sql.Driver</exclude> | |
| <!-- Excludes shaded slf4j to avoid conflicts when they are put into the fat jar --> | |
| <exclude>org/slf4j/**</exclude> | |
| </excludes> | |
| </filter> | |
| </filters> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-enforcer-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>enforce-jdbc-jar-compactness</id> | |
| <goals> | |
| <goal>enforce</goal> | |
| </goals> | |
| <phase>verify</phase> | |
| <configuration> | |
| <rules> | |
| <requireFilesSize> | |
| <message> | |
| The file drill-jdbc-all-${project.version}.jar is outside the expected size range. | |
| This is likely due to you adding new dependencies to a java-exec and not updating the excludes in this module. This is important as it minimizes the size of the | |
| dependency of Drill application users. | |
| </message> | |
| <maxsize>${jdbc-all-jar.maxsize}</maxsize> | |
| <minsize>15000000</minsize> | |
| <files> | |
| <file>${project.build.directory}/drill-jdbc-all-${project.version}.jar</file> | |
| </files> | |
| </requireFilesSize> | |
| </rules> | |
| <fail>true</fail> | |
| </configuration> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| <profiles> | |
| <profile> | |
| <id>apache-release</id> | |
| <build> | |
| <plugins> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-javadoc-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>attach-javadocs</id> | |
| <goals> | |
| <goal>aggregate-jar</goal> | |
| </goals> | |
| <inherited>false</inherited> | |
| <configuration> | |
| <includeDependencySources>true</includeDependencySources> | |
| <dependencySourceIncludes> | |
| <dependencySourceInclude>org.apache.drill.exec:drill-jdbc</dependencySourceInclude> | |
| </dependencySourceIncludes> | |
| <!-- Include only the published interface in the Javadoc- | |
| generated documentation. Unfortunately, the plugin does | |
| not support inclusion patterns and hence we have to rely | |
| on an exclusion pattern. --> | |
| <excludePackageNames>org.apache.drill.jdbc.impl</excludePackageNames> | |
| <!-- windowtitle: common part of window titles (goes in | |
| parentheses at end of window title, after in-page title | |
| (e.g., package name)) --> | |
| <windowtitle> | |
| Apache Drill JDBC Driver v. ${project.version} | |
| </windowtitle> | |
| <!-- header, footer: small text at right edge of | |
| top, bottom Overview/Package/etc. menu bars --> | |
| <header>Apache Drill JDBC Driver v. ${project.version}</header> | |
| <footer>Apache Drill JDBC Driver v. ${project.version}</footer> | |
| <!-- doctitle: in-page title for overview page --> | |
| <doctitle> | |
| Apache Drill JDBC Driver version ${project.version} | |
| </doctitle> | |
| <groups> | |
| <group> | |
| <title>Drill JDBC Driver</title> | |
| <packages>org.apache.drill.jdbc</packages> | |
| </group> | |
| <group> | |
| <title>Tracing Proxy JDBC Driver</title> | |
| <packages>org.apache.drill.jdbc.proxy</packages> | |
| </group> | |
| </groups> | |
| </configuration> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </profile> | |
| </profiles> | |
| </project> |