1<?xml version="1.0" encoding="UTF-8"?>
2<project xmlns="http://maven.apache.org/POM/4.0.0"
3         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5    <modelVersion>4.0.0</modelVersion>
6
7    <groupId>org.rocksdb</groupId>
8    <artifactId>rocksdbjni-jmh</artifactId>
9    <version>1.0-SNAPSHOT</version>
10
11    <url>http://rocksdb.org/</url>
12
13    <name>rocksdbjni-jmh</name>
14    <description>JMH Benchmarks for RocksDB Java API</description>
15
16    <organization>
17        <name>Facebook, Inc.</name>
18        <url>https://www.facebook.com</url>
19    </organization>
20
21    <licenses>
22        <license>
23            <name>Apache License 2.0</name>
24            <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
25            <distribution>repo</distribution>
26        </license>
27        <license>
28            <name>GNU General Public License, version 2</name>
29            <url>http://www.gnu.org/licenses/gpl-2.0.html</url>
30            <distribution>repo</distribution>
31        </license>
32    </licenses>
33
34    <scm>
35        <connection>scm:git:git://github.com/facebook/rocksdb.git</connection>
36        <developerConnection>scm:git:[email protected]:facebook/rocksdb.git</developerConnection>
37        <url>http://github.com/facebook/rocksdb/</url>
38    </scm>
39
40    <properties>
41        <project.build.source>1.7</project.build.source>
42        <project.build.target>1.7</project.build.target>
43        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
44
45        <jmh.version>1.22</jmh.version>
46        <uberjar.name>benchmarks</uberjar.name>
47    </properties>
48
49    <dependencies>
50        <dependency>
51            <groupId>org.rocksdb</groupId>
52            <artifactId>rocksdbjni</artifactId>
53            <version>6.6.0-SNAPSHOT</version>
54        </dependency>
55
56        <dependency>
57            <groupId>org.openjdk.jmh</groupId>
58            <artifactId>jmh-core</artifactId>
59            <version>${jmh.version}</version>
60        </dependency>
61        <dependency>
62            <groupId>org.openjdk.jmh</groupId>
63            <artifactId>jmh-generator-annprocess</artifactId>
64            <version>${jmh.version}</version>
65            <scope>provided</scope>
66        </dependency>
67    </dependencies>
68
69    <build>
70        <plugins>
71            <plugin>
72                <groupId>org.apache.maven.plugins</groupId>
73                <artifactId>maven-compiler-plugin</artifactId>
74                <version>3.8.1</version>
75                <configuration>
76                    <source>${project.build.source}</source>
77                    <target>${project.build.target}</target>
78                    <encoding>${project.build.sourceEncoding}</encoding>
79                </configuration>
80            </plugin>
81
82            <plugin>
83                <groupId>com.mycila</groupId>
84                <artifactId>license-maven-plugin</artifactId>
85                <version>3.0</version>
86                <inherited>true</inherited>
87                <configuration>
88                    <header>LICENSE-HEADER.txt</header>
89                    <failIfMissing>true</failIfMissing>
90                    <aggregate>true</aggregate>
91                    <strictCheck>true</strictCheck>
92                    <excludes>
93                        <exclude>pom.xml</exclude>
94                    </excludes>
95                    <encoding>${project.build.sourceEncoding}</encoding>
96                </configuration>
97            </plugin>
98
99            <plugin>
100                <groupId>org.apache.maven.plugins</groupId>
101                <artifactId>maven-shade-plugin</artifactId>
102                <version>3.2.1</version>
103                <executions>
104                    <execution>
105                        <phase>package</phase>
106                        <goals>
107                            <goal>shade</goal>
108                        </goals>
109                        <configuration>
110                            <finalName>${project.artifactId}-${project.version}-${uberjar.name}</finalName>
111                            <transformers>
112                                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
113                                    <mainClass>org.openjdk.jmh.Main</mainClass>
114                                </transformer>
115                            </transformers>
116                            <filters>
117                                <filter>
118                                    <!--
119                                        Shading signed JARs will fail without this.
120                                        http://stackoverflow.com/questions/999489/invalid-signature-file-when-attempting-to-run-a-jar
121                                    -->
122                                    <artifact>*:*</artifact>
123                                    <excludes>
124                                        <exclude>META-INF/*.SF</exclude>
125                                        <exclude>META-INF/*.DSA</exclude>
126                                        <exclude>META-INF/*.RSA</exclude>
127                                    </excludes>
128                                </filter>
129                            </filters>
130                        </configuration>
131                    </execution>
132                </executions>
133            </plugin>
134
135        </plugins>
136    </build>
137
138</project>