| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225 |
- <?xml version="1.0" encoding="UTF-8"?>
- <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">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.rocksdb</groupId>
- <artifactId>rocksdbjni</artifactId>
- <version>${ROCKSDB_JAVA_VERSION}</version> <!-- this will be replaced by the Makefile's rocksdbjavageneratepom target -->
- <name>RocksDB JNI</name>
- <description>RocksDB fat jar that contains .so files for linux32 and linux64 (glibc and musl-libc), jnilib files
- for Mac OSX, and a .dll for Windows x64.
- </description>
- <url>https://rocksdb.org</url>
- <inceptionYear>2012</inceptionYear>
- <licenses>
- <license>
- <name>Apache License 2.0</name>
- <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
- <distribution>repo</distribution>
- </license>
- <license>
- <name>GNU General Public License, version 2</name>
- <url>http://www.gnu.org/licenses/gpl-2.0.html</url>
- <distribution>repo</distribution>
- </license>
- </licenses>
- <scm>
- <connection>scm:git:https://github.com/facebook/rocksdb.git</connection>
- <developerConnection>scm:git:https://github.com/facebook/rocksdb.git</developerConnection>
- <url>scm:git:https://github.com/facebook/rocksdb.git</url>
- </scm>
- <organization>
- <name>Facebook</name>
- <url>https://www.facebook.com</url>
- </organization>
- <developers>
- <developer>
- <name>Facebook</name>
- <email>help@facebook.com</email>
- <timezone>America/New_York</timezone>
- <roles>
- <role>architect</role>
- </roles>
- </developer>
- </developers>
- <mailingLists>
- <mailingList>
- <name>rocksdb - Google Groups</name>
- <subscribe>rocksdb-subscribe@googlegroups.com</subscribe>
- <unsubscribe>rocksdb-unsubscribe@googlegroups.com</unsubscribe>
- <post>rocksdb@googlegroups.com</post>
- <archive>https://groups.google.com/forum/#!forum/rocksdb</archive>
- </mailingList>
- </mailingLists>
- <properties>
- <project.build.source>1.8</project.build.source>
- <project.build.target>1.8</project.build.target>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- </properties>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.2</version>
- <configuration>
- <source>${project.build.source}</source>
- <target>${project.build.target}</target>
- <encoding>${project.build.sourceEncoding}</encoding>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.18.1</version>
- <configuration>
- <argLine>${argLine} -ea -Xcheck:jni -Djava.library.path=${project.build.directory}</argLine>
- <useManifestOnlyJar>false</useManifestOnlyJar>
- <useSystemClassLoader>false</useSystemClassLoader>
- <additionalClasspathElements>
- <additionalClasspathElement>${project.build.directory}/*</additionalClasspathElement>
- </additionalClasspathElements>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.jacoco</groupId>
- <artifactId>jacoco-maven-plugin</artifactId>
- <version>0.7.2.201409121644</version>
- <executions>
- <execution>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- <execution>
- <id>report</id>
- <phase>prepare-package</phase>
- <goals>
- <goal>report</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.codehaus.gmaven</groupId>
- <artifactId>groovy-maven-plugin</artifactId>
- <version>2.0</version>
- <executions>
- <execution>
- <phase>process-classes</phase>
- <goals>
- <goal>execute</goal>
- </goals>
- <configuration>
- <defaults>
- <name>Xenu</name>
- </defaults>
- <source>
- String fileContents = new File(project.basedir.absolutePath + '/../include/rocksdb/version.h').getText('UTF-8')
- matcher = (fileContents =~ /(?s).*ROCKSDB_MAJOR ([0-9]+).*?/)
- String major_version = matcher.getAt(0).getAt(1)
- matcher = (fileContents =~ /(?s).*ROCKSDB_MINOR ([0-9]+).*?/)
- String minor_version = matcher.getAt(0).getAt(1)
- matcher = (fileContents =~ /(?s).*ROCKSDB_PATCH ([0-9]+).*?/)
- String patch_version = matcher.getAt(0).getAt(1)
- String version = String.format('%s.%s.%s', major_version, minor_version, patch_version)
- // Set version to be used in pom.properties
- project.version = version
- // Set version to be set as jar name
- project.build.finalName = project.artifactId + "-" + version
- </source>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>com.github.spotbugs</groupId>
- <artifactId>spotbugs-maven-plugin</artifactId>
- <version>4.7.2.1</version>
- <configuration>
- <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
- </configuration>
- <dependencies>
- <!-- overwrite dependency on spotbugs if you want to specify the version of spotbugs -->
- <dependency>
- <groupId>com.github.spotbugs</groupId>
- <artifactId>spotbugs</artifactId>
- <version>4.7.3</version>
- </dependency>
- </dependencies>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-pmd-plugin</artifactId>
- <version>3.20.0</version>
- <executions>
- <execution>
- <goals>
- <goal>check</goal>
- <goal>cpd-check</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <rulesets>
- <!-- A rule set, that comes bundled with PMD -->
- <ruleset>/pmd-rules.xml</ruleset>
- <!-- A rule set, that comes bundled with PMD -->
- <!-- <ruleset>/category/java/errorprone.xml</ruleset> -->
- </rulesets>
- </configuration>
- </plugin>
- </plugins>
- </build>
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.13.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.hamcrest</groupId>
- <artifactId>hamcrest</artifactId>
- <version>2.2</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>cglib</groupId>
- <artifactId>cglib</artifactId>
- <version>3.3.0</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.assertj</groupId>
- <artifactId>assertj-core</artifactId>
- <version>2.9.0</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-all</artifactId>
- <version>1.10.19</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <reporting>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jxr-plugin</artifactId>
- <version>3.3.0</version>
- </plugin>
- </plugins>
- </reporting>
- </project>
|