153 lines
5.5 KiB
XML
153 lines
5.5 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<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>
|
|
|
|
<groupId>com.benchmark</groupId>
|
|
<artifactId>data-access-benchmark</artifactId>
|
|
<version>1.0-SNAPSHOT</version>
|
|
<packaging>jar</packaging>
|
|
|
|
<properties>
|
|
<maven.compiler.source>17</maven.compiler.source>
|
|
<maven.compiler.target>17</maven.compiler.target>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<jmh.version>1.37</jmh.version>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<!-- JMH -->
|
|
<dependency>
|
|
<groupId>org.openjdk.jmh</groupId>
|
|
<artifactId>jmh-core</artifactId>
|
|
<version>${jmh.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.openjdk.jmh</groupId>
|
|
<artifactId>jmh-generator-annprocess</artifactId>
|
|
<version>${jmh.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Gson -->
|
|
<dependency>
|
|
<groupId>com.google.code.gson</groupId>
|
|
<artifactId>gson</artifactId>
|
|
<version>2.13.2</version>
|
|
</dependency>
|
|
|
|
<!-- Kryo binary serialization -->
|
|
<dependency>
|
|
<groupId>com.esotericsoftware</groupId>
|
|
<artifactId>kryo</artifactId>
|
|
<version>5.6.2</version>
|
|
</dependency>
|
|
|
|
<!-- SQLite JDBC driver -->
|
|
<dependency>
|
|
<groupId>org.xerial</groupId>
|
|
<artifactId>sqlite-jdbc</artifactId>
|
|
<version>3.51.3.0</version>
|
|
</dependency>
|
|
|
|
<!-- ORMLite -->
|
|
<dependency>
|
|
<groupId>com.j256.ormlite</groupId>
|
|
<artifactId>ormlite-jdbc</artifactId>
|
|
<version>6.1</version>
|
|
</dependency>
|
|
|
|
<!-- Chronicle Map -->
|
|
<dependency>
|
|
<groupId>net.openhft</groupId>
|
|
<artifactId>chronicle-map</artifactId>
|
|
<version>2026.1</version>
|
|
</dependency>
|
|
|
|
<!-- LMDB Java binding -->
|
|
<dependency>
|
|
<groupId>org.lmdbjava</groupId>
|
|
<artifactId>lmdbjava</artifactId>
|
|
<version>0.9.3</version>
|
|
</dependency>
|
|
|
|
<!-- MapDB -->
|
|
<dependency>
|
|
<groupId>org.mapdb</groupId>
|
|
<artifactId>mapdb</artifactId>
|
|
<version>3.1.0</version>
|
|
</dependency>
|
|
|
|
<!-- DuckDB JDBC -->
|
|
<dependency>
|
|
<groupId>org.duckdb</groupId>
|
|
<artifactId>duckdb_jdbc</artifactId>
|
|
<version>1.5.1.0</version>
|
|
</dependency>
|
|
|
|
<!-- Silence SLF4J "no binding" warning -->
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-nop</artifactId>
|
|
<version>2.0.17</version>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.11.0</version>
|
|
<configuration>
|
|
<source>17</source>
|
|
<target>17</target>
|
|
<annotationProcessorPaths>
|
|
<path>
|
|
<groupId>org.openjdk.jmh</groupId>
|
|
<artifactId>jmh-generator-annprocess</artifactId>
|
|
<version>${jmh.version}</version>
|
|
</path>
|
|
</annotationProcessorPaths>
|
|
</configuration>
|
|
</plugin>
|
|
<!-- Builds a self-contained benchmark jar -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-shade-plugin</artifactId>
|
|
<version>3.5.1</version>
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>shade</goal>
|
|
</goals>
|
|
<configuration>
|
|
<finalName>benchmarks</finalName>
|
|
<transformers>
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
|
|
<mainClass>com.benchmark.runner.BenchmarkMain</mainClass>
|
|
</transformer>
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
|
|
</transformers>
|
|
<filters>
|
|
<filter>
|
|
<artifact>*:*</artifact>
|
|
<excludes>
|
|
<exclude>META-INF/*.SF</exclude>
|
|
<exclude>META-INF/*.DSA</exclude>
|
|
<exclude>META-INF/*.RSA</exclude>
|
|
</excludes>
|
|
</filter>
|
|
</filters>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</project>
|