<?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/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
 
    <groupId>org.ruleml.psoa</groupId>
    <artifactId>psoaruleml-api</artifactId>
    <version>1.1</version>
    <packaging>jar</packaging>
    <name>PSOARuleML-API</name>
    <description>A Java API which uses JAXB library to create abstract syntax objects 
        from the XML schemas based on PSOA RuleML/XML language and converts
        the RuleML/XML syntax into PSOA Presetation Syntax.
    </description>      
    <licenses>
        <license>
            <name>GPLv3</name>
            <url>http://www.gnu.org/licenses/gpl-3.0.html</url>
        </license>
    </licenses>
    <url>https://github.com/sadnanalmanir/PSOARuleML-API</url>
    <developers>
        <developer>
            <id>sadnanalmanir</id>
            <name>Mohammad Sadnan Al Manir</name>
            <email>sadnanalmanir@gmail.com</email>
            <organization>University of New Brunswick, Saint John</organization>
            <organizationUrl>http://www2.unb.ca/csas/</organizationUrl>
        </developer>
    </developers>
    <scm>
        <connection>scm:git:git@github.com:sadnanalmanir/PSOARuleML-API.git</connection>
        <developerConnection>scm:git:git@github.com:sadnanalmanir/PSOARuleML-API.git</developerConnection>
        <url>https://github.com/sadnanalmanir/PSOARuleML-API</url>
    <tag>psoaruleml-api-1.1</tag>
  </scm>
  
    <properties>
        <!-- Optional, but sensible -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <distributionManagement>
        <!-- For uploading to sonatype repository-->
        <snapshotRepository> 
            <id>sonatype-nexus-snapshots</id> 
            <name>Sonatype Nexus snapshot repository</name> 
            <url>https://oss.sonatype.org/content/repositories/snapshots</url> 
        </snapshotRepository> 
        <repository> 
            <id>sonatype-nexus-staging</id> 
            <name>Sonatype Nexus release repository</name> 
            <url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url> 
        </repository> 
    </distributionManagement>
    
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>

        <plugins>

            <!-- Optional: JVM 1.6 compliance and UTF-8 encoding: -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>

            <!-- Optional: ensure the manifest contains artifact version information: -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.4</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                            <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>

            <!-- Required: source JAR -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.2.1</version>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <!-- Required: javadoc JAR -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.9.1</version>
                <executions>
                    <execution>
                        <id>attach-javadoc</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <!-- Release configuration: -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <version>2.5</version>

                <configuration>
                    <!-- Automated passphrase entry: -->

                    <!-- To pass your passphrase to the build automatically, so avoiding 
                    manual interaction, you'll need to put the passphrase into settings.xml. 
                    You don't really want that to be in plain text, so you'll want to follow: 
                    http://maven.apache.org/guides/mini/guide-encryption.html -->
                    <!-- <arguments>-Dgpg.passphrase=${gpg.passphrase}</arguments> -->

                    <!-- Manual passphrase entry: -->

                    <!-- This is the simplest secure solution, but requires you to type 
                    your key passphrase in manually when performing a release. No biggie unless 
                    you want your CI server to decide when to release for you. -->
                    <mavenExecutorId>forked-path</mavenExecutorId>

                </configuration>
            </plugin>
			
            <!-- Deployment -->
            <plugin>
                <groupId>org.sonatype.plugins</groupId>
                <artifactId>nexus-staging-maven-plugin</artifactId>
                <version>1.6.4</version>
                <extensions>true</extensions>
                <configuration>
                    <serverId>sonatype-nexus-staging</serverId>
                    <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                    <autoReleaseAfterClose>true</autoReleaseAfterClose>
                </configuration>
            </plugin>
                        
        </plugins>
    </build>

    <profiles>

        <!-- GPG Signature on release -->
        <profile>
            <id>release-sign-artifacts</id>
            <activation>
                <property>
                    <name>performRelease</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>1.4</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

    </profiles>

</project>
