<?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>org.clojure</groupId>
<artifactId>pom.contrib</artifactId>
<packaging>pom</packaging>
<version>0.2.2</version>
<name>pom.contrib</name>
<description>Parent POM for projects contributed to Clojure</description>
<url>
https://github.com/clojure/build.poms</url>
<properties>
<!-- Builds will use this release version of Clojure, may be
overridden in projects or at the command line. -->
<clojure.version>1.4.0</clojure.version>
<!-- By default, do not enable *warn-on-reflection*, may be
overridden in projects at the command line. -->
<clojure.warnOnReflection>false</clojure.warnOnReflection>
<clojure.source.dir>src/main/clojure</clojure.source.dir>
<clojure.testSource.dir>src/test/clojure</clojure.testSource.dir>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<scm>
<connection>scm:git:
[email protected]:clojure/build.poms.git</connection>
<developerConnection>scm:git:
[email protected]:clojure/build.poms.git</developerConnection>
<url>
[email protected]:clojure/build.poms.git</url>
<tag>pom.contrib-0.2.2</tag>
</scm>
<licenses>
<license>
<name>Eclipse Public License 1.0</name>
<url>
http://opensource.org/licenses/eclipse-1.0.php</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>stuartsierra</id>
<name>Stuart Sierra</name>
<url>
https://github.com/stuartsierra</url>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojure</artifactId>
<version>${clojure.version}</version>
</dependency>
</dependencies>
<distributionManagement>
<snapshotRepository>
<!-- This id is linked to the key setup on the CI server -->
<id>sonatype-nexus-staging</id>
<url>
https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
<build>
<plugins>
<plugin>
<!-- Add Clojure sources to the project's source directories -->
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.12</version>
<executions>
<execution>
<id>add-clojure-source-dirs</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
<goal>add-resource</goal>
</goals>
<configuration>
<sources>
<source>${clojure.source.dir}</source>
</sources>
<resources>
<resource>
<directory>${clojure.source.dir}</directory>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>add-clojure-test-source-dirs</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-source</goal>
<goal>add-test-resource</goal>
</goals>
<configuration>
<sources>
<source>${clojure.testSource.dir}</source>
</sources>
<resources>
<resource>
<directory>${clojure.testSource.dir}</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<!-- By default, compile everything as a sanity check, but do
not include any AOT-compiled .class files in the
JAR. Projects may override as needed. -->
<groupId>com.theoryinpractise</groupId>
<artifactId>clojure-maven-plugin</artifactId>
<version>1.7.1</version>
<extensions>true</extensions>
<configuration>
<warnOnReflection>${clojure.warnOnReflection}</warnOnReflection>
<temporaryOutputDirectory>true</temporaryOutputDirectory>
</configuration>
<executions>
<execution>
<id>clojure-compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>clojure-test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<!-- Clojure targets Java 1.6+ -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.0</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<!-- do not push pre-deployment SCM changes to upstream repo
with maven release plugin; if the release/deploy fails,
we're stuck with manually fixing up version numbers, git
history, etc -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.3</version>
<configuration>
<pushChanges>false</pushChanges>
<localCheckout>true</localCheckout>
</configuration>
</plugin>
<!-- deploy artifacts to sonatype -->
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.7</version>
<extensions>true</extensions>
<configuration>
<!-- The server "id" element from settings to use authentication from -->
<serverId>sonatype-nexus-staging</serverId>
<nexusUrl>
https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>sign</id>
<build>
<plugins>
<!-- sign artifacts for deployment -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>