]> git.proxmox.com Git - ceph.git/blob - ceph/src/rocksdb/java/pom.xml.template
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / rocksdb / java / pom.xml.template
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3 <modelVersion>4.0.0</modelVersion>
4
5 <groupId>org.rocksdb</groupId>
6 <artifactId>rocksdbjni</artifactId>
7 <version>${ROCKSDB_JAVA_VERSION}</version> <!-- this will be replaced by the Makefile's rocksdbjavageneratepom target -->
8
9 <name>RocksDB JNI</name>
10 <description>RocksDB fat jar that contains .so files for linux32 and linux64 (glibc and musl-libc), jnilib files
11 for Mac OSX, and a .dll for Windows x64.
12 </description>
13 <url>https://rocksdb.org</url>
14 <inceptionYear>2012</inceptionYear>
15
16 <licenses>
17 <license>
18 <name>Apache License 2.0</name>
19 <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
20 <distribution>repo</distribution>
21 </license>
22 <license>
23 <name>GNU General Public License, version 2</name>
24 <url>http://www.gnu.org/licenses/gpl-2.0.html</url>
25 <distribution>repo</distribution>
26 </license>
27 </licenses>
28
29 <scm>
30 <connection>scm:git:https://github.com/facebook/rocksdb.git</connection>
31 <developerConnection>scm:git:https://github.com/facebook/rocksdb.git</developerConnection>
32 <url>scm:git:https://github.com/facebook/rocksdb.git</url>
33 </scm>
34
35 <organization>
36 <name>Facebook</name>
37 <url>https://www.facebook.com</url>
38 </organization>
39
40 <developers>
41 <developer>
42 <name>Facebook</name>
43 <email>help@facebook.com</email>
44 <timezone>America/New_York</timezone>
45 <roles>
46 <role>architect</role>
47 </roles>
48 </developer>
49 </developers>
50
51 <mailingLists>
52 <mailingList>
53 <name>rocksdb - Google Groups</name>
54 <subscribe>rocksdb-subscribe@googlegroups.com</subscribe>
55 <unsubscribe>rocksdb-unsubscribe@googlegroups.com</unsubscribe>
56 <post>rocksdb@googlegroups.com</post>
57 <archive>https://groups.google.com/forum/#!forum/rocksdb</archive>
58 </mailingList>
59 </mailingLists>
60
61 <properties>
62 <project.build.source>1.7</project.build.source>
63 <project.build.target>1.7</project.build.target>
64 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
65 </properties>
66
67 <build>
68 <plugins>
69 <plugin>
70 <groupId>org.apache.maven.plugins</groupId>
71 <artifactId>maven-compiler-plugin</artifactId>
72 <version>3.2</version>
73 <configuration>
74 <source>${project.build.source}</source>
75 <target>${project.build.target}</target>
76 <encoding>${project.build.sourceEncoding}</encoding>
77 </configuration>
78 </plugin>
79 <plugin>
80 <groupId>org.apache.maven.plugins</groupId>
81 <artifactId>maven-surefire-plugin</artifactId>
82 <version>2.18.1</version>
83 <configuration>
84 <argLine>${argLine} -ea -Xcheck:jni -Djava.library.path=${project.build.directory}</argLine>
85 <useManifestOnlyJar>false</useManifestOnlyJar>
86 <useSystemClassLoader>false</useSystemClassLoader>
87 <additionalClasspathElements>
88 <additionalClasspathElement>${project.build.directory}/*</additionalClasspathElement>
89 </additionalClasspathElements>
90 </configuration>
91 </plugin>
92 <plugin>
93 <groupId>org.jacoco</groupId>
94 <artifactId>jacoco-maven-plugin</artifactId>
95 <version>0.7.2.201409121644</version>
96 <executions>
97 <execution>
98 <goals>
99 <goal>prepare-agent</goal>
100 </goals>
101 </execution>
102 <execution>
103 <id>report</id>
104 <phase>prepare-package</phase>
105 <goals>
106 <goal>report</goal>
107 </goals>
108 </execution>
109 </executions>
110 </plugin>
111 <plugin>
112 <groupId>org.codehaus.gmaven</groupId>
113 <artifactId>groovy-maven-plugin</artifactId>
114 <version>2.0</version>
115 <executions>
116 <execution>
117 <phase>process-classes</phase>
118 <goals>
119 <goal>execute</goal>
120 </goals>
121 <configuration>
122 <defaults>
123 <name>Xenu</name>
124 </defaults>
125 <source>
126 String fileContents = new File(project.basedir.absolutePath + '/../include/rocksdb/version.h').getText('UTF-8')
127 matcher = (fileContents =~ /(?s).*ROCKSDB_MAJOR ([0-9]+).*?/)
128 String major_version = matcher.getAt(0).getAt(1)
129 matcher = (fileContents =~ /(?s).*ROCKSDB_MINOR ([0-9]+).*?/)
130 String minor_version = matcher.getAt(0).getAt(1)
131 matcher = (fileContents =~ /(?s).*ROCKSDB_PATCH ([0-9]+).*?/)
132 String patch_version = matcher.getAt(0).getAt(1)
133 String version = String.format('%s.%s.%s', major_version, minor_version, patch_version)
134 // Set version to be used in pom.properties
135 project.version = version
136 // Set version to be set as jar name
137 project.build.finalName = project.artifactId + "-" + version
138 </source>
139 </configuration>
140 </execution>
141 </executions>
142 </plugin>
143 </plugins>
144 </build>
145
146 <dependencies>
147 <dependency>
148 <groupId>junit</groupId>
149 <artifactId>junit</artifactId>
150 <version>4.13.1</version>
151 <scope>test</scope>
152 </dependency>
153 <dependency>
154 <groupId>org.hamcrest</groupId>
155 <artifactId>hamcrest</artifactId>
156 <version>2.2</version>
157 <scope>test</scope>
158 </dependency>
159 <dependency>
160 <groupId>cglib</groupId>
161 <artifactId>cglib</artifactId>
162 <version>3.3.0</version>
163 <scope>test</scope>
164 </dependency>
165 <dependency>
166 <groupId>org.assertj</groupId>
167 <artifactId>assertj-core</artifactId>
168 <version>2.9.0</version>
169 <scope>test</scope>
170 </dependency>
171 <dependency>
172 <groupId>org.mockito</groupId>
173 <artifactId>mockito-all</artifactId>
174 <version>1.10.19</version>
175 <scope>test</scope>
176 </dependency>
177 </dependencies>
178 </project>