| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| |
| 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/maven-v4_0_0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <parent> |
| <groupId>org.apache.cassandra</groupId> |
| <artifactId>java-driver-parent</artifactId> |
| <version>4.18.0</version> |
| </parent> |
| <artifactId>java-driver-core</artifactId> |
| <packaging>bundle</packaging> |
| <name>Apache Cassandra Java Driver - core</name> |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>${project.groupId}</groupId> |
| <artifactId>java-driver-bom</artifactId> |
| <version>${project.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>com.datastax.oss</groupId> |
| <artifactId>native-protocol</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-handler</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.datastax.oss</groupId> |
| <artifactId>java-driver-shaded-guava</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.typesafe</groupId> |
| <artifactId>config</artifactId> |
| </dependency> |
| <!-- |
| JNR dependencies are used for native system calls that improve the driver's accuracy, for |
| example using a microsecond-precision clock for query timestamps, and including the PID in |
| UUID generation. |
| These dependencies are recommended but not mandatory, the driver will fall back to pure-Java |
| implementations if they are not available at runtime. |
| --> |
| <dependency> |
| <groupId>com.github.jnr</groupId> |
| <artifactId>jnr-posix</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.xerial.snappy</groupId> |
| <artifactId>snappy-java</artifactId> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.lz4</groupId> |
| <artifactId>lz4-java</artifactId> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>io.dropwizard.metrics</groupId> |
| <artifactId>metrics-core</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.hdrhistogram</groupId> |
| <artifactId>HdrHistogram</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.esri.geometry</groupId> |
| <artifactId>esri-geometry-api</artifactId> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.tinkerpop</groupId> |
| <artifactId>gremlin-core</artifactId> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.tinkerpop</groupId> |
| <artifactId>tinkergraph-gremlin</artifactId> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-core</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-databind</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.reactivestreams</groupId> |
| <artifactId>reactive-streams</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.github.stephenc.jcip</groupId> |
| <artifactId>jcip-annotations</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.github.spotbugs</groupId> |
| <artifactId>spotbugs-annotations</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.graalvm.sdk</groupId> |
| <artifactId>graal-sdk</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.graalvm.nativeimage</groupId> |
| <artifactId>svm</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>io.projectreactor.tools</groupId> |
| <artifactId>blockhound</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-classic</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.tngtech.java</groupId> |
| <artifactId>junit-dataprovider</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.assertj</groupId> |
| <artifactId>assertj-core</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>io.reactivex.rxjava2</groupId> |
| <artifactId>rxjava</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.reactivestreams</groupId> |
| <artifactId>reactive-streams-tck</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.awaitility</groupId> |
| <artifactId>awaitility</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.testng</groupId> |
| <artifactId>testng</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.github.tomakehurst</groupId> |
| <artifactId>wiremock</artifactId> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <build> |
| <resources> |
| <resource> |
| <directory>src/main/resources</directory> |
| <includes> |
| <include>com/datastax/oss/driver/Driver.properties</include> |
| </includes> |
| <filtering>true</filtering> |
| </resource> |
| <resource> |
| <directory>src/main/resources</directory> |
| <excludes> |
| <exclude>com/datastax/oss/driver/Driver.properties</exclude> |
| </excludes> |
| <filtering>false</filtering> |
| </resource> |
| <resource> |
| <directory>${project.basedir}/..</directory> |
| <includes> |
| <include>LICENSE</include> |
| <include>NOTICE_binary.txt</include> |
| <include>NOTICE.txt</include> |
| </includes> |
| <targetPath>META-INF</targetPath> |
| </resource> |
| </resources> |
| <testResources> |
| <testResource> |
| <directory>src/test/resources</directory> |
| <includes> |
| <include>project.properties</include> |
| </includes> |
| <filtering>true</filtering> |
| </testResource> |
| <testResource> |
| <directory>src/test/resources</directory> |
| <excludes> |
| <exclude>project.properties</exclude> |
| </excludes> |
| <filtering>false</filtering> |
| </testResource> |
| </testResources> |
| <plugins> |
| <plugin> |
| <artifactId>maven-jar-plugin</artifactId> |
| <configuration> |
| <archive> |
| <manifestEntries> |
| <Automatic-Module-Name>com.datastax.oss.driver.core</Automatic-Module-Name> |
| </manifestEntries> |
| </archive> |
| </configuration> |
| <executions> |
| <execution> |
| <id>test-jar</id> |
| <goals> |
| <goal>test-jar</goal> |
| </goals> |
| <configuration> |
| <excludes> |
| <exclude>logback-test.xml</exclude> |
| </excludes> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <jvm>${testing.jvm}/bin/java</jvm> |
| <argLine>${mockitoopens.argline}</argLine> |
| <threadCount>1</threadCount> |
| <properties> |
| <property> |
| <name>listener</name> |
| <value>com.datastax.oss.driver.DriverRunListener</value> |
| </property> |
| <!-- tell TestNG not to run jUnit tests --> |
| <property> |
| <name>junit</name> |
| <value>false</value> |
| </property> |
| <property> |
| <name>suitename</name> |
| <value>Reactive Streams TCK</value> |
| </property> |
| </properties> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.maven.surefire</groupId> |
| <artifactId>surefire-junit47</artifactId> |
| <version>${surefire.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.maven.surefire</groupId> |
| <artifactId>surefire-testng</artifactId> |
| <version>${surefire.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.felix</groupId> |
| <artifactId>maven-bundle-plugin</artifactId> |
| <extensions>true</extensions> |
| <executions> |
| <execution> |
| <goals> |
| <goal>bundle</goal> |
| </goals> |
| <configuration> |
| <instructions> |
| <Bundle-SymbolicName>com.datastax.oss.driver.core</Bundle-SymbolicName> |
| <!-- |
| Allow importing code from other packages |
| (so reflection-based loading of policies works) |
| --> |
| <DynamicImport-Package>*</DynamicImport-Package> |
| <Import-Package> |
| <!-- |
| 1) Don't include the packages below because they contain annotations only and are |
| not required at runtime. |
| -->!net.jcip.annotations.*, !edu.umd.cs.findbugs.annotations.*, |
| <!-- |
| 2) Don't include GraalVM. |
| -->!org.graalvm.*, !com.oracle.svm.*, |
| <!-- |
| 3) Use resolution:=optional for optional dependencies in order to make it possible |
| to use the driver without such dependencies in an OSGi environment, as long as |
| the application does not attempt to access their packages. |
| Note: dependencies marked as optional are by default included with optional |
| resolution in the manifest; we only need to manually set the resolution to |
| optional for dependencies declared as non-optional in the pom files. |
| -->jnr.*;resolution:=optional, com.esri.core.geometry.*;resolution:=optional, org.reactivestreams.*;resolution:=optional, org.apache.tinkerpop.*;resolution:=optional, org.javatuples.*;resolution:=optional, reactor.blockhound.*;resolution:=optional, * |
| </Import-Package> |
| <Export-Package>com.datastax.oss.driver.*.core.*, com.datastax.dse.driver.*.core.*</Export-Package> |
| </instructions> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>generate-dependency-list</id> |
| <goals> |
| <goal>list</goal> |
| </goals> |
| <phase>generate-resources</phase> |
| <configuration> |
| <includeScope>runtime</includeScope> |
| <outputScope>true</outputScope> |
| <excludeGroupIds>com.datastax.cassandra,com.datastax.dse</excludeGroupIds> |
| <outputFile>${project.build.outputDirectory}/com/datastax/dse/driver/internal/deps.txt</outputFile> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </project> |