Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
433 lines (380 sloc) 13 KB
<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>
<!--
We use SonaType for publishing artefacts. Parent POM makes things
easier here.
-->
<parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>5</version>
</parent>
<!-- Project info. -->
<groupId>com.carrotsearch</groupId>
<artifactId>junit-benchmarks</artifactId>
<version>0.4-SNAPSHOT</version>
<packaging>jar</packaging>
<name>JUnitBenchmarks</name>
<description>A framework for writing performance micro-benchmarks using JUnit4 annotations.</description>
<url>http://labs.carrotsearch.com/junit-benchmarks.html</url>
<!-- Extended project info. -->
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<organization>
<name>Carrot Search s.c.</name>
<url>http://www.carrotsearch.com</url>
</organization>
<issueManagement>
<system>Jira</system>
<url>http://issues.carrot2.org/browse/JUNITBENCH</url>
</issueManagement>
<mailingLists>
<mailingList>
<name>Announcements and bug reports mailing list</name>
<subscribe>junit-benchmarks+subscribe@googlegroups.com</subscribe>
<unsubscribe>junit-benchmarks+unsubscribe@googlegroups.com</unsubscribe>
<post>junit-benchmarks@googlegroups.com</post>
</mailingList>
</mailingLists>
<distributionManagement>
<repository>
<id>forge-releases</id>
<url>https://repository.sonatype.org/service/local/staging/deploy/maven2</url>
</repository>
</distributionManagement>
<scm>
<url>git@github.com:carrotsearch/junit-benchmarks.git</url>
<connection>scm:git:git@github.com:carrotsearch/junit-benchmarks.git</connection>
<developerConnection>scm:git:git@github.com:sonatype/junit-benchmarks.git</developerConnection>
</scm>
<developers>
<developer>
<id>dawid.weiss</id>
<name>Dawid Weiss</name>
<email>dawid.weiss@carrotsearch.com</email>
</developer>
<developer>
<id>stanislaw.osinski</id>
<name>Stanisław Osiński</name>
<email>stanislaw.osinski@carrotsearch.com</email>
</developer>
</developers>
<!-- Global properties. -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
<!-- Dependencies. -->
<dependencies>
<!-- Optional at runtime. -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.7</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.2.127</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<!-- Required for tests only. -->
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<!-- Build tuning. -->
<build>
<defaultGoal>install</defaultGoal>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.6.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.2</version>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.1</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.8</version>
<configuration>
<buildOutputDirectory>${project.build.directory}/eclipse</buildOutputDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.1</version>
<configuration>
<useReleaseProfile>true</useReleaseProfile>
<releaseProfiles>release,maven-release</releaseProfiles>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>antrun-retrotranslate-jdk15</id>
<phase>package</phase>
<configuration>
<target>
<taskdef name="retrotranslator" classname="net.sf.retrotranslator.transformer.RetrotranslatorTask" classpathref="maven.plugin.classpath" />
<retrotranslator verbose="true" verify="false" failonwarning="true" target="1.5" embed="com.carrotsearch.junitbenchmarks.backport" destjar="${project.build.directory}/${project.build.finalName}-jdk15.jar">
<jarfileset dir="${project.build.directory}" includes="${project.build.finalName}.jar" />
<classpath>
<pathelement location="${basedir}/src/main/retrotranslator" />
</classpath>
<classpath refid="maven.plugin.classpath" />
<classpath refid="maven.compile.classpath" />
<classpath>
<fileset dir="${java.home}/lib" includes="rt.jar" />
</classpath>
</retrotranslator>
<attachartifact file="${project.build.directory}/${project.build.finalName}-jdk15.jar" classifier="jdk15" type="jar" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>net.sf.retrotranslator</groupId>
<artifactId>retrotranslator-transformer</artifactId>
<version>1.2.9</version>
</dependency>
<dependency>
<groupId>net.sf.retrotranslator</groupId>
<artifactId>retrotranslator-runtime</artifactId>
<version>1.2.9</version>
</dependency>
<dependency>
<groupId>backport-util-concurrent</groupId>
<artifactId>backport-util-concurrent</artifactId>
<version>3.1</version>
</dependency>
</dependencies>
</plugin>
</plugins>
<!-- Exclude these resources when packaging. -->
<resources>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
<excludes>
<exclude>**/*.json</exclude>
</excludes>
</resource>
</resources>
</build>
<!-- Reports -->
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>2.5</version>
<configuration>
<targetJdk>${maven.compiler.target}</targetJdk>
<aggregate>true</aggregate>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.7.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.2</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<findbugsXmlOutput>true</findbugsXmlOutput>
</configuration>
</plugin>
</plugins>
</reporting>
<profiles>
<!-- No tests, no additional checks. -->
<profile>
<id>fastinstall</id>
<properties>
<maven.test.skip>true</maven.test.skip>
</properties>
<build>
<defaultGoal>install</defaultGoal>
</build>
</profile>
<!-- Execute clover code coverage reports via ANT. -->
<profile>
<id>clover</id>
<build>
<plugins>
<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<configuration>
<includesTestSourceRoots>false</includesTestSourceRoots>
</configuration>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>instrument</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<generateXml>true</generateXml>
<generateHtml>true</generateHtml>
</configuration>
</plugin>
</plugins>
</reporting>
</profile>
<!-- Release mode. -->
<profile>
<id>release</id>
<build>
<defaultGoal>install</defaultGoal>
<plugins>
<!-- Attach and modify JavaDocs. -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<stylesheetfile>${basedir}/src/main/javadoc/stylesheet.css</stylesheetfile>
<docfilessubdirs>true</docfilessubdirs>
<windowtitle>JUnitBenchmarks v${version} API
Documentation
(JavaDoc)</windowtitle>
<doctitle>JUnitBenchmarks v${version} API
Documentation</doctitle>
<header><![CDATA[<div id='header'><a class='logo' target='_top' href='http://labs.carrotsearch.com'><img src='resources/logo.png'></a>JUnitBenchmarks v${version} <br>API Documentation</div>]]></header>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Attach sources -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!--
Configure assembly of ZIP and TAR.GZ bundles (stand-alone
distributions).
-->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>src/main/assembly/bin.xml</descriptor>
</descriptors>
<attach>false</attach>
<appendAssemblyId>false</appendAssemblyId>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- GPG sign artefacts. -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.1</version>
<configuration>
<excludes>
<exclude>**/*.gz</exclude>
<exclude>**/*.zip</exclude>
</excludes>
</configuration>
<executions>
<execution>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>