<?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>com.proofpoint.platform</groupId>
    <artifactId>library</artifactId>
    <version>1.05</version>
    <packaging>pom</packaging>
    <name>Library POM</name>
    <description>Library POM</description>
    <url>http://github.com/proofpoint/platform</url>

    <inceptionYear>2010</inceptionYear>
    <organization>
        <name>Proofpoint, Inc.</name>
        <url>http://www.proofpoint.com</url>
    </organization>
    <licenses>
        <license>
            <name>Apache License 2.0</name>
            <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
            <distribution>repo</distribution>
        </license>
    </licenses>

    <developers>
        <developer>
            <id>jgmyers</id>
            <name>John Gardiner Myers</name>
            <email>jgmyers@proofpoint.com</email>
        </developer>
    </developers>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.build.targetJdk>1.7</project.build.targetJdk>
        <project.report.outputEncoding>UTF-8</project.report.outputEncoding>
        <project.report.inputEncoding>UTF-8</project.report.inputEncoding>

        <!-- Default jvm size for compiler, tests etc. -->
        <platform.build.jvmsize>1024m</platform.build.jvmsize>

        <!-- define the forkmode for tests. Default is 'once' -->
        <platform.test.fork-mode>once</platform.test.fork-mode>

        <!-- Controls all the checkers run when building the project. -->
        <!-- Can be activated with -Dplatform.check.skip-all=true on the command line. -->
        <platform.check.skip-all>false</platform.check.skip-all>
        <!-- Controls the basic checkers run when building the project. -->
        <platform.check.skip-basic>${platform.check.skip-all}</platform.check.skip-basic>
        <!-- Controls the extended checkers run when building the project. -->
        <platform.check.skip-extended>${platform.check.skip-all}</platform.check.skip-extended>

        <!-- basic checks -->
        <platform.check.skip-enforcer>${platform.check.skip-basic}</platform.check.skip-enforcer>
        <platform.check.skip-duplicate-finder>${platform.check.skip-basic}</platform.check.skip-duplicate-finder>

        <!-- extended checks -->
        <platform.check.skip-findbugs>${platform.check.skip-extended}</platform.check.skip-findbugs>
        <platform.check.skip-jacoco>${platform.check.skip-extended}</platform.check.skip-jacoco>

        <platform.check.fail-all>true</platform.check.fail-all>
        <platform.check.fail-basic>${platform.check.fail-all}</platform.check.fail-basic>
        <platform.check.fail-extended>${platform.check.fail-all}</platform.check.fail-extended>

        <!-- basic checks -->
        <platform.check.fail-enforcer>${platform.check.fail-basic}</platform.check.fail-enforcer>
        <platform.check.fail-duplicate-finder>${platform.check.fail-basic}</platform.check.fail-duplicate-finder>

        <!-- extended checks -->
        <platform.check.fail-findbugs>false</platform.check.fail-findbugs>

        <dep.jetty.version>9.2.2.v20140723</dep.jetty.version>
        <dep.slf4j.version>1.7.5</dep.slf4j.version>
        <dep.logback.version>1.1.1</dep.logback.version>
        <dep.javax-servlet.version>3.1.0</dep.javax-servlet.version>
        <dep.jackson.version>2.4.2</dep.jackson.version>
        <dep.jersey.version>2.12</dep.jersey.version>
    </properties>

    <scm>
        <connection>scm:git:git://github.com/proofpoint/platform.git</connection>
        <developerConnection>scm:git:git@github.com:proofpoint/platform.git</developerConnection>
        <url>http://github.com/proofpoint/platform/tree/master</url>
      <tag>1.05</tag>
  </scm>

    <prerequisites>
        <maven>3.2.2</maven>
    </prerequisites>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version>2.7</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>2.5</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-install-plugin</artifactId>
                    <version>2.4</version>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>1.8</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-enforcer-plugin</artifactId>
                    <version>1.2</version>
                    <executions>
                        <execution>
                            <id>default</id>
                            <phase>validate</phase>
                            <goals>
                                <goal>enforce</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <skip>${platform.check.skip-enforcer}</skip>
                        <fail>${platform.check.fail-enforcer}</fail>
                        <failFast>false</failFast>
                        <rules>
                            <requirePluginVersions />
                            <bannedDependencies>
                                <excludes>
                                    <!-- clashes with commons-logging:commons-logging -->
                                    <exclude>commons-logging:commons-logging-api</exclude>
                                    <!-- clashes with cglib:cglib-nodep -->
                                    <exclude>cglib:cglib</exclude>
                                    <!-- old versions of junit repackage hamcrest -->
                                    <exclude>junit:junit</exclude>
                                    <!-- use guava -->
                                    <exclude>com.google.collections:google-collections</exclude>
                                    <!-- but not the badly numbered ones... -->
                                    <exclude>com.google.guava:guava</exclude>
                                    <!-- Clashes with com.google.code.findbugs:annotations and having both jars -->
                                    <!-- as a dependency then clashes with the dependency checker (because it -->
                                    <!-- is not very good at handling annotations). Use the annotations jar -->
                                    <!-- instead which has all jsr305 annotations and the additional findbugs -->
                                    <!-- stuff. -->
                                    <exclude>com.google.code.findbugs:jsr305</exclude>
                                    <!-- Use the official version at javax.servlet:javax.servlet-api -->
                                    <exclude>org.eclipse.jetty.orbit:javax.servlet</exclude>
                                    <!-- removed -->
                                    <exclude>com.proofpoint.platform:jmx-http-rpc-experimental</exclude>
                                    <!-- renamed Platform modules -->
                                    <exclude>com.proofpoint.platform:discovery-experimental</exclude>
                                    <exclude>com.proofpoint.platform:event-experimental</exclude>
                                    <exclude>com.proofpoint.platform:http-client-experimental</exclude>
                                    <exclude>com.proofpoint.platform:jmx-http-experimental</exclude>
                                    <exclude>com.proofpoint.platform:rack-experimental</exclude>
                                    <exclude>com.proofpoint.platform:rack-launcher-experimental</exclude>
                                    <exclude>com.proofpoint.platform:rack-packaging-experimental</exclude>
                                    <exclude>com.proofpoint.platform:rack-server-base-experimental</exclude>
                                </excludes>
                                <includes>
                                    <!-- whitelist the well numbered guava releases -->
                                    <include>com.google.guava:guava:[10.0.1,)</include>
                                    <!-- newer versions of junit do not repackage hamcrest -->
                                    <include>junit:junit:[4.11,)</include>                                </includes>
                            </bannedDependencies>
                            <requireMavenVersion>
                                <version>3.2.2</version>
                            </requireMavenVersion>
                            <requireJavaVersion>
                                <version>${project.build.targetJdk}</version>
                            </requireJavaVersion>
                        </rules>
                    </configuration>
                </plugin>

                <!-- Tweak the compiler to use more memory and use UTF-8 for the source code. -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.0</version>
                    <configuration>
                        <source>${project.build.targetJdk}</source>
                        <target>${project.build.targetJdk}</target>
                        <encoding>${project.build.sourceEncoding}</encoding>
                        <maxmem>${platform.build.jvmsize}</maxmem>
                        <showWarnings>true</showWarnings>
                        <fork>true</fork>
                    </configuration>
                </plugin>

                <!-- Resource plugins should always use UTF-8 -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.6</version>
                    <configuration>
                        <encoding>${project.build.sourceEncoding}</encoding>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>2.4</version>
                    <configuration>
                        <!-- must be true for jar-with-dependencies builds -->
                        <appendAssemblyId>true</appendAssemblyId>
                        <!-- Always use GNU tar mode. -->
                        <tarLongFileMode>gnu</tarLongFileMode>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.14</version>
                    <configuration>
                        <systemPropertyVariables>
                            <file.encoding>${project.build.sourceEncoding}</file.encoding>
                            <sun.jnu.encoding>${project.build.sourceEncoding}</sun.jnu.encoding>
                            <user.timezone>UTC</user.timezone>
                            <java.awt.headless>true</java.awt.headless>
                        </systemPropertyVariables>
                        <forkMode>${platform.test.fork-mode}</forkMode>
                        <runOrder>random</runOrder>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <version>2.5</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.9</version>
                    <configuration>
                        <source>${project.build.targetJdk}</source>
                        <encoding>${project.build.sourceEncoding}</encoding>
                        <maxmemory>${platform.build.jvmsize}</maxmemory>
                        <additionalparam>-quiet</additionalparam>
                    </configuration>
                    <executions>
                        <execution>
                            <id>attach-javadocs</id>
                            <phase>verify</phase>
                            <goals>
                                <goal>jar</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>2.4</version>
                </plugin>

                <!-- bundle up source code into jars for both the main and the test sources -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>2.2.1</version>
                    <executions>
                        <execution>
                            <id>attach-sources</id>
                            <phase>package</phase>
                            <goals>
                                <goal>jar-no-fork</goal>
                                <goal>test-jar-no-fork</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>com.ning.maven.plugins</groupId>
                    <artifactId>maven-duplicate-finder-plugin</artifactId>
                    <version>1.0.6</version>
                    <configuration>
                        <skip>${platform.check.skip-duplicate-finder}</skip>
                        <failBuildInCaseOfConflict>${platform.check.fail-duplicate-finder}</failBuildInCaseOfConflict>
                        <exceptions>
                            <exception>
                                <!-- For bval-jsr303 -->
                                <conflictingDependencies>
                                    <dependency>
                                        <groupId>commons-beanutils</groupId>
                                        <artifactId>commons-beanutils-core</artifactId>
                                        <version>1.8.3</version>
                                    </dependency>
                                    <dependency>
                                        <groupId>commons-collections</groupId>
                                        <artifactId>commons-collections</artifactId>
                                        <version>3.2.1</version>
                                    </dependency>
                                </conflictingDependencies>
                                <classes>
                                    <class>org.apache.commons.collections.ArrayStack</class>
                                    <class>org.apache.commons.collections.Buffer</class>
                                    <class>org.apache.commons.collections.BufferUnderflowException</class>
                                    <class>org.apache.commons.collections.FastHashMap</class>
                                </classes>
                            </exception>
                        </exceptions>

                        <ignoredResources>
                            <!-- For all the jetty packages -->
                            <ignoredResource>about\.html</ignoredResource>
                            <ignoredResource>META-INF/.*</ignoredResource>
                            <ignoredResource>about_files/.*</ignoredResource>
                            <ignoredResource>plugin\.properties</ignoredResource>
                            <ignoredResource>.*\.java</ignoredResource>
                            <ignoredResource>THIRD-PARTY</ignoredResource>
                        </ignoredResources>

                        <ignoredDependencies>
                            <!-- jRuby complete isn't very safe, but we only use it in the rack project -->
                            <dependency>
                                <groupId>org.jruby</groupId>
                                <artifactId>jruby-complete</artifactId>
                            </dependency>
                        </ignoredDependencies>
                    </configuration>
                    <executions>
                        <execution>
                            <phase>process-test-classes</phase>
                            <goals>
                                <goal>check</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>findbugs-maven-plugin</artifactId>
                    <version>3.0.0</version>
                    <configuration>
                        <skip>${platform.check.skip-findbugs}</skip>
                        <jvmArgs>-Xmx${platform.build.jvmsize}</jvmArgs>
                        <failOnError>${platform.check.fail-findbugs}</failOnError>
                    </configuration>
                    <executions>
                        <execution>
                            <id>default</id>
                            <phase>verify</phase>
                            <goals>
                                <goal>check</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>com.mycila.maven-license-plugin</groupId>
                    <artifactId>maven-license-plugin</artifactId>
                    <version>1.9.0</version>
                    <configuration>
                        <skipExistingHeaders>true</skipExistingHeaders>
                        <header>license-header.txt</header>
                        <mapping>
                            <java>SLASHSTAR_STYLE</java>
                        </mapping>
                        <excludes>
                            <exclude>**/README.txt</exclude>
                            <exclude>**/config.properties</exclude>
                            <exclude>**/log.properties</exclude>
                            <exclude>**/src/*/resources/**</exclude>
                            <exclude>**/*.html</exclude>
                        </excludes>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.jacoco</groupId>
                    <artifactId>jacoco-maven-plugin</artifactId>
                    <version>0.7.1.201405082137</version>
                    <executions>
                        <execution>
                            <id>default</id>
                            <goals>
                                <goal>prepare-agent</goal>
                            </goals>
                        </execution>
                        <execution>
                            <id>report</id>
                            <phase>prepare-package</phase>
                            <goals>
                                <goal>report</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <skip>${platform.check.skip-jacoco}</skip>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-site-plugin</artifactId>
                    <version>3.2</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-gpg-plugin</artifactId>
                    <version>1.4</version>
                    <configuration>
                        <useAgent>true</useAgent>
                    </configuration>
                    <executions>
                        <execution>
                            <id>sign-artifacts</id>
                            <phase>verify</phase>
                            <goals>
                                <goal>sign</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>

        <!-- This is the list of plugins used for the main build. -->
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-assembly-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>com.ning.maven.plugins</groupId>
                <artifactId>maven-duplicate-finder-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>findbugs-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <distributionManagement>
        <snapshotRepository>
            <id>sonatype-nexus-snapshots</id>
            <name>Sonatype Nexus Snapshots</name>
            <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
        </snapshotRepository>
        <repository>
            <id>sonatype-nexus-staging</id>
            <name>Nexus Release Repository</name>
            <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        </repository>
    </distributionManagement>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>bootstrap</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>configuration</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>concurrent</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>dbpool</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>discovery</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>event</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>jaxrs</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>http-server</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>http-client</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>json</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>jmx</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>launcher</artifactId>
                <version>1.05</version>
                <classifier>bin</classifier>
                <type>tar.gz</type>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>log</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>node</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>reporting</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>reporting-client</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>stats</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>units</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>testing</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>trace-token</artifactId>
                <version>1.05</version>
            </dependency>

            <dependency>
                <groupId>com.proofpoint.platform</groupId>
                <artifactId>jmx-http</artifactId>
                <version>1.05</version>
            </dependency>

            <!-- Java APIs -->
            <dependency>
                <groupId>javax.inject</groupId>
                <artifactId>javax.inject</artifactId>
                <version>1</version>
            </dependency>
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
                <version>${dep.javax-servlet.version}</version>
            </dependency>
            <dependency>
                <groupId>javax.validation</groupId>
                <artifactId>validation-api</artifactId>
                <version>1.1.0.Final</version>
            </dependency>

            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>${dep.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-nop</artifactId>
                <version>${dep.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-simple</artifactId>
                <version>${dep.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-ext</artifactId>
                <version>${dep.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>jcl-over-slf4j</artifactId>
                <version>${dep.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>jul-to-slf4j</artifactId>
                <version>${dep.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>log4j-over-slf4j</artifactId>
                <version>${dep.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-jdk14</artifactId>
                <version>${dep.slf4j.version}</version>
            </dependency>


            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-classic</artifactId>
                <version>${dep.logback.version}</version>
            </dependency>

            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-core</artifactId>
                <version>${dep.logback.version}</version>
            </dependency>

            <!-- jersey -->
            <dependency>
                <groupId>javax.ws.rs</groupId>
                <artifactId>javax.ws.rs-api</artifactId>
                <version>2.0.1</version>
            </dependency>

            <dependency>
                <groupId>org.glassfish.jersey.core</groupId>
                <artifactId>jersey-common</artifactId>
                <version>${dep.jersey.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.glassfish.hk2.external</groupId>
                        <artifactId>javax.inject</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.glassfish.hk2.external</groupId>
                        <artifactId>aopalliance-repackaged</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.glassfish.jersey.core</groupId>
                <artifactId>jersey-server</artifactId>
                <version>${dep.jersey.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.glassfish.hk2.external</groupId>
                        <artifactId>javax.inject</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.glassfish.jersey.containers</groupId>
                <artifactId>jersey-container-servlet-core</artifactId>
                <version>${dep.jersey.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.glassfish.hk2.external</groupId>
                        <artifactId>javax.inject</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>javax.annotation</groupId>
                <artifactId>javax.annotation-api</artifactId>
                <version>1.2</version>
            </dependency>

            <dependency>
                <groupId>org.weakref</groupId>
                <artifactId>jmxutils</artifactId>
                <version>1.18</version>
            </dependency>

            <dependency>
                <groupId>joda-time</groupId>
                <artifactId>joda-time</artifactId>
                <version>2.4</version>
            </dependency>

            <dependency>
                <groupId>org.apache.bval</groupId>
                <artifactId>bval-jsr303</artifactId>
                <version>0.5</version>
            </dependency>

            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>17.0</version>
            </dependency>

            <dependency>
                <groupId>com.google.inject</groupId>
                <artifactId>guice</artifactId>
                <version>3.0</version>
            </dependency>

            <dependency>
                <groupId>com.google.inject.extensions</groupId>
                <artifactId>guice-multibindings</artifactId>
                <version>3.0</version>
            </dependency>

            <dependency>
                <groupId>com.google.inject.extensions</groupId>
                <artifactId>guice-servlet</artifactId>
                <version>3.0</version>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>${dep.jackson.version}</version>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
                <version>${dep.jackson.version}</version>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
                <version>${dep.jackson.version}</version>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.datatype</groupId>
                <artifactId>jackson-datatype-guava</artifactId>
                <version>${dep.jackson.version}</version>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.datatype</groupId>
                <artifactId>jackson-datatype-joda</artifactId>
                <version>${dep.jackson.version}</version>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.dataformat</groupId>
                <artifactId>jackson-dataformat-smile</artifactId>
                <version>${dep.jackson.version}</version>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-server</artifactId>
                <version>${dep.jetty.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.eclipse.jetty.orbit</groupId>
                        <artifactId>javax.servlet</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-servlet</artifactId>
                <version>${dep.jetty.version}</version>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-util</artifactId>
                <version>${dep.jetty.version}</version>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-servlets</artifactId>
                <version>${dep.jetty.version}</version>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-security</artifactId>
                <version>${dep.jetty.version}</version>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-jmx</artifactId>
                <version>${dep.jetty.version}</version>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-http</artifactId>
                <version>${dep.jetty.version}</version>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-client</artifactId>
                <version>${dep.jetty.version}</version>
            </dependency>

            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-io</artifactId>
                <version>${dep.jetty.version}</version>
            </dependency>

            <dependency>
                <groupId>com.google.code.findbugs</groupId>
                <artifactId>annotations</artifactId>
                <version>2.0.3</version>
            </dependency>

            <!-- Testing -->
            <dependency>
                <groupId>org.testng</groupId>
                <artifactId>testng</artifactId>
                <version>6.8.7</version>
                <exclusions>
                    <exclusion>
                        <groupId>junit</groupId>
                        <artifactId>junit</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.mockito</groupId>
                <artifactId>mockito-core</artifactId>
                <version>1.9.5</version>
            </dependency>

            <dependency>
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-core</artifactId>
                <version>1.3</version>
            </dependency>
            <dependency>
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-library</artifactId>
                <version>1.3</version>
            </dependency>

            <dependency>
                <groupId>org.objenesis</groupId>
                <artifactId>objenesis</artifactId>
                <version>1.3</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <profiles>
        <profile>
            <id>sonatype-oss-release</id>
            <properties>
                <skipTests>true</skipTests>
                <!-- tests run in the preparation step of the release -->
            </properties>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                    </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>
