All Downloads are FREE. Search and download functionalities are using the official Maven repository.

netbout-spi-1.5.pom.xml Maven / Gradle / Ivy

<?xml version="1.0"?>
<!--
 * Copyright (c) 2009-2012, Netbout.com
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met: 1) Redistributions of source code must retain the above
 * copyright notice, this list of conditions and the following
 * disclaimer. 2) Redistributions in binary form must reproduce the above
 * copyright notice, this list of conditions and the following
 * disclaimer in the documentation and/or other materials provided
 * with the distribution. 3) Neither the name of the NetBout.com nor
 * the names of its contributors may be used to endorse or promote
 * products derived from this software without specific prior written
 * permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
 * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
 * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
 * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
 * OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * This file is an Apache Maven 3.0 build automation script. Maven is used
 * in the project since it's one of the most powerful and stable
 * tools in the market. Other tools were reviewed, including: Apache Ant,
 * Phing, and GNU Make (all I personally know). None of them are suitable
 * better than Apache Maven to this project. Maven is widely supported
 * by open source community and is extended by many plugins. The only
 * critical defect that I know is that Maven doesn't support incremental
 * build and re-builds everything from scratch. I already reported this
 * problem: http://jira.codehaus.org/browse/MNG-4885.
 *
 * @author Yegor Bugayenko ([email protected])
 * @version $Id: pom.xml 3395 2012-10-04 09:44:27Z [email protected] $
 * @link http://maven.apache.org/
 * @link http://en.wikipedia.org/wiki/List_of_build_automation_software
 -->
<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.netbout.spi</groupId>
    <artifactId>netbout-spi</artifactId>
    <version netbout="yes">1.5</version>
    <packaging>jar</packaging>
    <name>com.netbout.spi</name>

    <description>Service Programming Interface for NetBout.com</description>
    <url>http://spi.netbout.com</url>
    <inceptionYear>2011</inceptionYear>

    <organization>
        <name>netBout Inc.</name>
        <url>http://spi.netbout.com</url>
    </organization>

    <licenses>
        <license>
            <name>netBout persistent communications</name>
            <url>http://spi.netbout.com/LICENSE.txt</url>
            <distribution>repo</distribution>
            <comments>This is an open-source software</comments>
        </license>
    </licenses>

    <developers>
        <developer>
            <id>1</id>
            <name>Yegor Bugayenko</name>
            <email>[email protected]</email>
            <organization>netBout Inc.</organization>
            <organizationUrl>http://www.netbout.com</organizationUrl>
            <roles>
                <role>Architect</role>
                <role>Developer</role>
            </roles>
            <timezone>-7</timezone>
        </developer>
    </developers>

    <issueManagement>
        <system>trac</system>
        <url>http://trac.netbout.com/netbout</url>
    </issueManagement>

    <scm>
        <connection>scm:svn:svn://svn.netbout.com/netbout/trunk/spi</connection>
        <developerConnection>scm:svn:svn://svn.netbout.com/netbout/trunk/spi</developerConnection>
        <url>svn://svn.netbout.com/netbout/trunk/spi</url>
    </scm>

    <distributionManagement>
        <downloadUrl>https://oss.sonatype.org/content/groups/public</downloadUrl>
        <repository>
            <uniqueVersion>false</uniqueVersion>
            <id>oss.sonatype.org</id>
            <url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
        </repository>
        <snapshotRepository>
            <uniqueVersion>false</uniqueVersion>
            <id>oss.sonatype.org</id>
            <url>https://oss.sonatype.org/content/repositories/snapshots</url>
        </snapshotRepository>
        <site>
            <!--
            Deploying the site to Amazon S3. "spi.netbout.com" server details
            are defined in "settings.xml" file, provided by continuous integration
            server during build cycle.
            -->
            <id>spi.netbout.com</id>
            <name>spi.netbout.com Project Site</name>
            <url>s3://spi.netbout.com/</url>
        </site>
    </distributionManagement>

    <prerequisites>
        <maven>3.0</maven>
    </prerequisites>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <rexsl.version since="3 Feb 2012">1.0-SNAPSHOT</rexsl.version>
    </properties>

    <repositories>
        <!-- intentionally empty -->
        <repository>
            <!-- until REXSL is in development -->
            <id>oss.sonatype.org</id>
            <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
        </repository>
    </repositories>

    <pluginRepositories>
        <!-- intentionally empty -->
    </pluginRepositories>

    <dependencies>
        <dependency>
            <!--
            This library simplifies string operations. This is
            org.apache.commons.lang.*.
            -->
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version since="26 Dec 2010">2.6</version>
        </dependency>
        <dependency>
            <!-- This library simplifies file-management operations. -->
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version since="19 Oct 2011">2.1</version>
        </dependency>
        <dependency>
            <!-- ReXSL core features -->
            <groupId>com.rexsl</groupId>
            <artifactId>rexsl-core</artifactId>
            <version>${rexsl.version}</version>
        </dependency>
        <dependency>
            <!-- ReXSL test client -->
            <groupId>com.rexsl</groupId>
            <artifactId>rexsl-test</artifactId>
            <version>${rexsl.version}</version>
        </dependency>
        <dependency>
            <!-- ReXSL test client, mocks -->
            <groupId>com.rexsl</groupId>
            <artifactId>rexsl-test</artifactId>
            <version>${rexsl.version}</version>
            <classifier>mock</classifier>
            <scope>test</scope>
        </dependency>
        <dependency>
            <!-- JAX-RS implementation, core library -->
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
            <version since="6 May 2012">1.12</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <!-- Logging facility, on top of SLF4J. -->
            <groupId>com.jcabi</groupId>
            <artifactId>jcabi-log</artifactId>
            <version since="6 Jun 2012">1.0-SNAPSHOT</version>
        </dependency>
        <dependency>
            <!--
            Apache Xerces is a JAXP implementation of DOM.
            In order to replace a default implementation
            provided by JDK with Xerces we are using text files inside
            "src/main/resources/META-INF/services" directory.
            -->
            <groupId>xerces</groupId>
            <artifactId>xercesImpl</artifactId>
            <version since="9 Mar 2011">2.9.1</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <!-- Forward all calls to SLF4J to LOG4J. -->
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version since="19 Sep 2011">1.6.2</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <!-- Use LOG4J logging facility for all loggings. -->
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version since="19 Sep 2011">1.2.16</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <!--
            org.hamcrest.MatcherAssert class.
            @link http://code.google.com/p/hamcrest/wiki/Tutorial
            -->
            <groupId>org.hamcrest</groupId>
            <artifactId>hamcrest-core</artifactId>
            <version since="2 Sep 2012">1.3</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <!--
            Assertions and matchers for unit tests.
            @link http://code.google.com/p/hamcrest/wiki/Tutorial
            -->
            <groupId>org.hamcrest</groupId>
            <artifactId>hamcrest-library</artifactId>
            <version since="2 Sep 2012">1.3</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <!--
            We are using JUnit framework for unit test organization
            and management. This framework is the most stable and mature
            in the market. Other options considered: TestNG.
            @link http://www.junit.org/
            -->
            <groupId>junit</groupId>
            <artifactId>junit-dep</artifactId>
            <version since="23 Dec 2011">4.10</version>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.hamcrest</groupId>
                    <artifactId>hamcrest-core</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <!--
            Mockito is used as a mocking library during testing.
            Other options: jMock.
            @link http://stackoverflow.com/questions/22697
            @link http://www.mockito.org/
            -->
            <groupId>org.mockito</groupId>
            <artifactId>mockito-core</artifactId>
            <version since="17 Apr 2010">1.9.0</version>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.hamcrest</groupId>
                    <artifactId>hamcrest-core</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.reflections</groupId>
            <artifactId>reflections</artifactId>
            <version since="8 Dec 2011">0.9.5</version>
        </dependency>
        <dependency>
            <groupId>joda-time</groupId>
            <artifactId>joda-time</artifactId>
            <version since="14 Nov 2011">2.0</version>
        </dependency>
        <dependency>
            <!-- Base64 codec -->
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version since="8 Nov 2011">1.5</version>
        </dependency>
        <dependency>
            <!-- Embedded Java Servlet Container, for com.rexsl:rexsl-test:mock -->
            <groupId>com.sun.grizzly</groupId>
            <artifactId>grizzly-servlet-webserver</artifactId>
            <version>1.9.10</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <profiles>
        <profile>
            <!--
            This profile activates all continuous integration specific
            plugins, not necessary in development. To activate
            this profile run: "mvn -Dci"
            -->
            <id>continuous-integration</id>
            <activation>
                <property><name>ci</name></property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.qulice</groupId>
                        <artifactId>qulice-maven-plugin</artifactId>
                        <version since="2 Apr 2012">0.1.9</version>
                        <configuration>
                            <license>file:${basedir}/LICENSE.txt</license>
                        </configuration>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>check</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>com.ning.maven.plugins</groupId>
                        <artifactId>maven-duplicate-finder-plugin</artifactId>
                        <version since="30 May 2012">1.0.3</version>
                        <configuration>
                            <failBuildInCaseOfConflict>true</failBuildInCaseOfConflict>
                            <checkTestClasspath>false</checkTestClasspath>
                            <ignoredResources>
                                <ignoredResource>META-INF/.*</ignoredResource>
                            </ignoredResources>
                        </configuration>
                        <executions>
                            <execution>
                                <phase>verify</phase>
                                <goals>
                                    <goal>check</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <version since="2 Sep 2011">2.8</version>
                        <executions>
                            <execution>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-assembly-plugin</artifactId>
                        <dependencies>
                            <dependency>
                                <groupId>com.jcabi</groupId>
                                <artifactId>jcabi-assembly</artifactId>
                                <version since="5 Aug 2012">0.1.9</version>
                            </dependency>
                        </dependencies>
                        <executions>
                            <execution>
                                <id>sources-package</id>
                                <phase>package</phase>
                                <goals>
                                    <goal>single</goal>
                                </goals>
                                <configuration>
                                    <descriptorRefs>
                                        <descriptorRef>jcabi-sources</descriptorRef>
                                    </descriptorRefs>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            This profile activates all site-related plugins. To activate
            this profile run: "mvn -Dsite"
            -->
            <id>live-site</id>
            <activation>
                <property><name>site</name></property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-site-plugin</artifactId>
                        <configuration>
                            <reportPlugins>
                                <plugin>
                                    <artifactId>maven-project-info-reports-plugin</artifactId>
                                    <version since="7 Nov 2010">2.2</version>
                                    <configuration>
                                        <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
                                        <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
                                    </configuration>
                                    <reports>
                                        <report>cim</report>
                                        <report>dependencies</report>
                                        <report>issue-tracking</report>
                                        <report>license</report>
                                        <report>mailing-list</report>
                                        <report>plugins</report>
                                        <report>project-team</report>
                                        <report>scm</report>
                                        <report>summary</report>
                                    </reports>
                                </plugin>
                                <plugin>
                                    <artifactId>maven-javadoc-plugin</artifactId>
                                    <version since="5 Sep 2012">2.8.1</version>
                                    <configuration>
                                        <failOnError>true</failOnError>
                                        <serialwarn>true</serialwarn>
                                        <windowtitle>
                                            ${project.name} ${project.version} API
                                        </windowtitle>
                                        <quiet>true</quiet>
                                        <links>
                                            <link>http://download.oracle.com/javaee/6/api/</link>
                                        </links>
                                        <detectLinks>true</detectLinks>
                                        <tags>
                                            <tag>
                                                <name>todo</name>
                                                <placement>a</placement>
                                                <head>To do:</head>
                                            </tag>
                                            <tag>
                                                <name>checkstyle</name>
                                                <placement>a</placement>
                                                <head>Suppressed Checkstyle violations:</head>
                                            </tag>
                                        </tags>
                                        <reportSets>
                                            <reportSet>
                                                <id>html</id>
                                                <reports>
                                                    <report>javadoc</report>
                                                </reports>
                                            </reportSet>
                                        </reportSets>
                                    </configuration>
                                </plugin>
                                <plugin>
                                    <groupId>org.codehaus.mojo</groupId>
                                    <artifactId>cobertura-maven-plugin</artifactId>
                                    <version since="2 Oct 2011">2.5.1</version>
                                </plugin>
                            </reportPlugins>
                        </configuration>
                        <executions>
                            <execution>
                                <id>attach-descriptor</id>
                                <goals>
                                    <goal>attach-descriptor</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Sign artifacts before installation with GPG.
            -->
            <id>gpg</id>
            <activation>
                <property><name>gpg.keyname</name></property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <!--
                        To GPG-sign the artifact before deployment to foreign
                        repository. GPG keys have to be provided in CI
                        environment, and published beforehand.
                        @link http://www.sonatype.com/people/2010/01/how-to-generate-pgp-signatures-with-maven/
                        -->
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version since="21 Dec 2010">1.1</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    <build>
        <extensions>
            <extension>
                <groupId>org.kuali.maven.wagons</groupId>
                <artifactId>maven-s3-wagon</artifactId>
                <version since="20 Sep 2012">1.1.14</version>
            </extension>
        </extensions>
        <pluginManagement>
            <plugins>
                <plugin>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version since="2 Oct 2011">2.4.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version since="2 Oct 2011">2.7</version>
                </plugin>
                <plugin>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version since="2 Oct 2011">2.3</version>
                </plugin>
                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version since="19 Oct 2011">2.2.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-install-plugin</artifactId>
                    <version since="2 Oct 2011">2.3.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version since="2 Oct 2011">2.5</version>
                </plugin>
                <plugin>
                    <artifactId>maven-site-plugin</artifactId>
                    <version since="2 Oct 2011">3.0-beta-3</version>
                    <configuration>
                        <reportPlugins>
                            <!--
                            Section is intentionally empty. Full list of plugins
                            is configured in "CI" profile. We don't need all them
                            during development, that's why they are not here.
                            -->
                        </reportPlugins>
                    </configuration>
                </plugin>
                <plugin>
                    <!--
                    Starts unit tests, protocols their results and creates
                    a summary report. It is required to send testing protocol
                    to the STDOUT as well, not only to the file.
                    -->
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version since="13 Dec 2011">2.11</version>
                    <configuration>
                        <argLine>-Dfile.encoding=UTF8</argLine>
                        <runOrder>random</runOrder>
                        <useFile>false</useFile>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version since="20 May 2012">2.4</version>
                    <configuration>
                        <source>1.6</source>
                        <target>1.6</target>
                        <optimize>true</optimize>
                        <showWarnings>true</showWarnings>
                        <showDeprecation>true</showDeprecation>
                        <compilerArguments>
                            <Xlint/>
                            <Werror/>
                            <Xlint:-path/>
                            <!-- @see https://blogs.oracle.com/darcy/entry/bootclasspath_older_source -->
                            <Xlint:-options/>
                        </compilerArguments>
                        <testExcludes>
                            <exclude>**/package-info.java</exclude>
                        </testExcludes>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version since="5 Dec 2011">2.3.2</version>
                    <configuration>
                        <archive>
                            <manifestEntries>
                                <Netbout-Revision>${build.number}</Netbout-Revision>
                                <Netbout-Version>${project.version}</Netbout-Version>
                                <Netbout-Date>${maven.build.timestamp}</Netbout-Date>
                            </manifestEntries>
                        </archive>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <version since="5 Aug 2012">1.1</version>
                <executions>
                    <execution>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>create</goal>
                        </goals>
                        <configuration>
                            <buildNumberPropertyName>build.number</buildNumberPropertyName>
                            <doCheck>false</doCheck>
                            <doUpdate>false</doUpdate>
                            <getRevisionOnlyOnce>true</getRevisionOnlyOnce>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-jar-plugin</artifactId>
                <executions>
                    <execution>
                        <id>mock-artifact</id>
                        <phase>package</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        <configuration>
                            <classesDirectory>${project.build.testOutputDirectory}</classesDirectory>
                            <archive>
                                <index>true</index>
                                <manifest>
                                    <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                                </manifest>
                            </archive>
                            <classifier>mock</classifier>
                            <includes>
                                <include>**/*Mocker*.class</include>
                            </includes>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <version since="2 Dec 2011">1.7</version>
                <executions>
                    <execution>
                        <id>add-test-sources</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>add-test-source</goal>
                        </goals>
                        <configuration>
                            <sources>
                                <source>${basedir}/src/mock/java</source>
                            </sources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

</project>




© 2015 - 2024 Weber Informatics LLC | Privacy Policy