<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>

    <parent>
        <groupId>org.sonatype.oss</groupId>
        <artifactId>oss-parent</artifactId>
        <version>7</version>
    </parent>

    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-annotation</artifactId>
    <version>1.9.0</version>
    <packaging>jar</packaging>

    <name>GroupDocs Java Annotation</name>
    <url>http://groupdocs.com</url>
    <description>
        GroupDocs.Annotation lets you add notes to PDF and Word documents, as well as to image files – all directly from
        a web browser. It is a convenient web-based tool that doesn’t require any software installation and allows you
        and your colleagues to annotate documents online.
        Moreover, with GroupDocs.Annotation, you can add your notes to a document and then send it for approval or
        review, or share the document with others for online collaborative review in real-time. This way you get
        feedback faster and can keep everyone’s notes and comments in a single file.
    </description>

    <developers>
        <developer>
            <id>groupdocs</id>
            <name>Marketplace Team</name>
            <email>support@groupdocs.com</email>
        </developer>
    </developers>

    <licenses>
        <license>
            <name>GroupDocs License, Version 1.0</name>
            <url>http://www.aspose.com/corporate/purchase/end-user-license-agreement.aspx</url>
            <distribution>repo</distribution>
        </license>
    </licenses>

    <properties>
        <groupdocs.viewer>2.8.0</groupdocs.viewer>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.bootstrap.classes>${java.home}/lib/rt.jar</java.bootstrap.classes>
        <java.cryptographic.extension.classes>${java.home}/lib/jce.jar</java.cryptographic.extension.classes>
        <java.secure.socket.extension.classes>${java.home}/lib/jsse.jar</java.secure.socket.extension.classes>
        <!-- Start Aspose -->
        <aspose.cells.version>8.3.2</aspose.cells.version>
        <aspose.diagram.version>5.0.0</aspose.diagram.version>
        <aspose.email.version>4.9.0.0</aspose.email.version>
        <aspose.imaging.version>2.4.0</aspose.imaging.version>
        <aspose.pdf.version>9.7.1</aspose.pdf.version>
        <aspose.slides.version>14.10.0</aspose.slides.version>
        <aspose.tasks.version>7.4.0</aspose.tasks.version>
        <aspose.words.version>14.12.0</aspose.words.version>
        <!-- End Aspose -->
        <qa.skip.findbugs>true</qa.skip.findbugs>
        <qa.skip.pmd>true</qa.skip.pmd>
        <qa.skip.checkstyle>true</qa.skip.checkstyle>
        <qa.skip.junit>false</qa.skip.junit>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.groupdocs</groupId>
            <artifactId>groupdocs-viewer</artifactId>
            <version>${groupdocs.viewer}</version>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.0.1</version>
            <type>jar</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.json</groupId>
            <artifactId>json</artifactId>
            <version>20090211</version>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.2.4</version>
        </dependency>
        <dependency>
            <groupId>org.atmosphere</groupId>
            <artifactId>atmosphere-runtime</artifactId>
            <version>2.2.3</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.4</version>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.4</version>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.1.4</version>
            <type>jar</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.1.4</version>
            <type>jar</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.1.4</version>
            <type>jar</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.j256.ormlite</groupId>
            <artifactId>ormlite-core</artifactId>
            <version>4.48</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.j256.ormlite</groupId>
            <artifactId>ormlite-jdbc</artifactId>
            <version>4.48</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.32</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.microsoft.sqlserver</groupId>
            <artifactId>sqljdbc4</artifactId>
            <version>4.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.thoughtworks.xstream</groupId>
            <artifactId>xstream</artifactId>
            <version>1.3.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.xerial</groupId>
            <artifactId>sqlite-jdbc</artifactId>
            <version>3.7.2</version>
            <type>jar</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>9.3-1102-jdbc4</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.3.2</version>
        </dependency>
        <!-- Testing dependencies -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>1.10.8</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.powermock</groupId>
            <artifactId>powermock-core</artifactId>
            <version>1.6.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.powermock</groupId>
            <artifactId>powermock-module-junit4</artifactId>
            <version>1.6.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.powermock</groupId>
            <artifactId>powermock-api-mockito</artifactId>
            <version>1.6.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.hsqldb</groupId>
            <artifactId>hsqldb</artifactId>
            <version>2.3.2</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.googlecode.junit-toolbox</groupId>
            <artifactId>junit-toolbox</artifactId>
            <version>1.9</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.skyscreamer</groupId>
            <artifactId>jsonassert</artifactId>
            <version>1.2.3</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-install-plugin</artifactId>
                <version>2.5.1</version>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.10</version>
                <configuration>
                    <argLine>-XX:-UseSplitVerifier</argLine>
                </configuration>
            </plugin>
        </plugins>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-shade-plugin</artifactId>
                    <version>2.3</version>
                    <configuration>
                        <createDependencyReducedPom>true</createDependencyReducedPom>
                        <filters>
                            <filter>
                                <artifact>*:*</artifact>
                                <excludes>
                                    <exclude>META-INF/*.SF</exclude>
                                    <exclude>META-INF/*.DSA</exclude>
                                    <exclude>META-INF/*.RSA</exclude>
                                </excludes>
                            </filter>
                        </filters>
                    </configuration>
                    <executions>
                        <execution>
                            <phase>package</phase>
                            <goals>
                                <goal>shade</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-install-plugin</artifactId>
                    <version>2.5.1</version>
                    <executions>
                        <execution>
                            <id>install</id>
                            <phase>package</phase>
                            <goals>
                                <goal>install-file</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <file>${project.build.directory}/${project.build.finalName}.jar</file>
                        <artifactId>${project.artifactId}</artifactId>
                        <groupId>${project.groupId}</groupId>
                        <version>${project.version}</version>
                        <packaging>${project.packaging}</packaging>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>com.github.wvengen</groupId>
                    <artifactId>proguard-maven-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>proguard</id>
                            <phase>package</phase>
                            <goals>
                                <goal>proguard</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <maxMemory>1024m</maxMemory>
                        <options>
                            <!-- Common -->
                            <option>-keep class !com.groupdocs.** { *; }</option>
                            <option>-keep class a.** { *; }</option>
                            <option>-keep class aspose.** { *; }</option>
                            <option>-keep class asposewobfuscated.** { *; }</option>
                            <option>-keep class ch.** { *; }</option>
                            <option>-keep class javax.** { *; }</option>
                            <option>-keep class net.** { *; }</option>
                            <option>-keep class org.** { *; }</option>
                            <option>-keep class org.joda.time.** { *; }</option>
                            <option>-keep class org.joda.convert.** { *; }</option>
                            <option>-dontnote</option>
                            <option>-ignorewarnings</option>
                            <option>-dontoptimize</option>
                            <option>-dontshrink</option>
                            <option>-dontpreverify</option>
                            <option>-keepattributes</option>
                            <!-- Viewer -->
                            <option>-keep public class com.groupdocs.viewer.config.* { *; }</option>
                            <option>-keep public class com.groupdocs.viewer.domain.** { *; }</option>
                            <option>-keep public class com.groupdocs.viewer.handlers.* { *; }</option>
                            <option>-keep public class com.groupdocs.viewer.handlers.input.* { *; }</option>
                            <option>-keep public class com.groupdocs.viewer.resources.* { *; }</option>
                            <!-- Annotation -->
                            <option>-keep public class com.groupdocs.annotation.api.shared.** { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.config.** { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.constructor.** { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.environment.** { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.connector.data.** { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.connector.db.** { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.connector.IConnector { *; }
                            </option>
                            <option>-keep public class com.groupdocs.annotation.data.common.StoreLogic { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.common.StorageType { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.DaoFactory { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.dao.interfaces.** { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.data.tables.interfaces.** { *; }
                            </option>
                            <option>-keep public class com.groupdocs.annotation.exception.**
                            </option>
                            <option>-keep public class com.groupdocs.annotation.enums.AccessRights { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.enums.AnnotationEvent { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.enums.AnnotationType { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.domain.request.* { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.domain.response.* { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.handler.AnnotationHandler { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.handler.etc.AccessCallbackData { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.handler.IGroupDocsAnnotation { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.handler.IGroupDocsAtmosphere { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.common.** { *; }</option>
                            <option>-keep public class com.groupdocs.annotation.localization.** { *; }</option>
                        </options>
                        <libs>
                            <lib>${java.bootstrap.classes}</lib>
                            <lib>${java.cryptographic.extension.classes}</lib>
                            <lib>${java.secure.socket.extension.classes}</lib>
                        </libs>
                        <obfuscate>true</obfuscate>
                        <injar>${project.build.finalName}.jar</injar>
                        <outjar>${project.build.finalName}.jar</outjar>
                        <outputDirectory>${project.build.directory}</outputDirectory>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>net.sf.proguard</groupId>
                            <artifactId>proguard-base</artifactId>
                            <version>4.10</version>
                            <scope>runtime</scope>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.10.1</version>
                    <executions>
                        <execution>
                            <id>attach-javadocs</id>
                            <phase>initialize</phase>
                            <goals>
                                <goal>jar</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <charset>UTF-8</charset>
                        <docencoding>UTF-8</docencoding>
                        <docfilessubdirs>true</docfilessubdirs>
                        <!--<links>-->
                        <!--<link>http://java.sun.com/j2se/1.5.0/docs/api/</link>-->
                        <!--</links>-->
                        <show>protected</show>
                        <source>1.7</source>

                        <sourcepath>${basedir}/src/main/java/com/groupdocs/annotation</sourcepath>
                        <sourceFileIncludes>
                            <include>api/shared/**</include>
                            <include>config/**</include>
                            <include>data/environment/**</include>
                            <include>data/constructor/**</include>
                            <include>data/connector/db/IDatabaseConnector.java</include>
                            <include>data/connector/data/**</include>
                            <include>data/connector/db/**</include>
                            <include>data/connector/StoreLogic.java</include>
                            <include>data/connector/IConnector.java</include>
                            <include>data/connector/StorageType.java</include>
                            <include>data/DaoFactory.java</include>
                            <include>data/dao/interfaces/IDao.java</include>
                            <include>data/dao/interfaces/IAnnotationDao.java</include>
                            <include>data/dao/interfaces/ICollaboratorDao.java</include>
                            <include>data/dao/interfaces/IDocumentDao.java</include>
                            <include>data/dao/interfaces/IReplyDao.java</include>
                            <include>data/dao/interfaces/ISessionDao.java</include>
                            <include>data/dao/interfaces/ISystemInfoDao.java</include>
                            <include>data/dao/interfaces/IUserDao.java</include>
                            <include>data/tables/interfaces/IAnnotation.java</include>
                            <include>data/tables/interfaces/ICollaborator.java</include>
                            <include>data/tables/interfaces/IDocument.java</include>
                            <include>data/tables/interfaces/IReply.java</include>
                            <include>data/tables/interfaces/ISession.java</include>
                            <include>data/tables/interfaces/ISystemInfo.java</include>
                            <include>data/tables/interfaces/ITable.java</include>
                            <include>data/tables/interfaces/IUser.java</include>
                            <include>exception/**</include>
                            <include>domain/request/**</include>
                            <include>domain/response/**</include>
                            <include>handler/AnnotationHandler.java</include>
                            <include>handler/etc/AccessCallbackData.java</include>
                            <include>handler/IGroupDocsAnnotation.java</include>
                            <include>handler/IGroupDocsAtmosphere.java</include>
                            <include>common/**</include>
                            <include>localization/**</include>
                            <include>config/ServiceConfiguration.java</include>
                            <include>enums/AccessRights.java</include>
                            <include>enums/AnnotationEvent.java</include>
                            <include>enums/AnnotationType.java</include>
                        </sourceFileIncludes>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>findbugs-maven-plugin</artifactId>
                    <version>3.0.0</version>
                    <configuration>
                        <skip>${qa.skip.findbugs}</skip>
                        <failOnError>false</failOnError>
                        <threshold>High</threshold>
                        <effort>Default</effort>
                        <xmlOutput>false</xmlOutput>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-pmd-plugin</artifactId>
                    <version>3.3</version>
                    <configuration>
                        <skip>${qa.skip.pmd}</skip>
                        <targetJdk>${maven.compiler.source}</targetJdk>
                        <verbose>true</verbose>
                        <excludes>
                            <exclude>com/groupdocs/annotation/license/AnnotationConstants.java</exclude>
                        </excludes>
                    </configuration>
                    <executions>
                        <execution>
                            <phase>package</phase>
                            <goals>
                                <goal>check</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-checkstyle-plugin</artifactId>
                    <version>2.13</version>
                    <executions>
                        <execution>
                            <id>verify-style</id>
                            <phase>process-classes</phase>
                            <goals>
                                <goal>check</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <skip>${qa.skip.checkstyle}</skip>
                        <logViolationsToConsole>true</logViolationsToConsole>
                        <checkstyleRules>
                            <module name="Checker">
                                <!-- Checks for Size Violations.                    -->
                                <!-- See http://checkstyle.sf.net/config_sizes.html -->
                                <module name="FileLength">
                                    <property name="max" value="3500" />
                                    <property name="fileExtensions" value="java"/>
                                </module>
                                <!-- Checks for whitespace                               -->
                                <!-- See http://checkstyle.sf.net/config_whitespace.html -->
                                <module name="FileTabCharacter"/>
                                <!--Variable names checks-->
                                <module name="TreeWalker">
                                    <module name="StaticVariableName"/>
                                    <module name="TypeName">
                                        <property name="format" value="^_?[A-Z][a-zA-Z0-9]*$"/>
                                    </module>
                                </module>
                            </module>
                        </checkstyleRules>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.18.1</version>
                    <configuration>
                        <argLine>-Xms512m -Xmx1024m -XX:MaxPermSize=512m -XX:PermSize=256m -ea</argLine>
                        <skip>${qa.skip.junit}</skip>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <profiles>
        <profile>
            <id>development</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-shade-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-install-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>findbugs-maven-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-pmd-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-checkstyle-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>fat</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-shade-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>com.github.wvengen</groupId>
                        <artifactId>proguard-maven-plugin</artifactId>
                        <configuration>
                            <outjar>${project.build.finalName}-fat-final.jar</outjar>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-install-plugin</artifactId>
                        <configuration>
                            <file>${project.build.directory}/${project.build.finalName}-fat-final.jar</file>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>slim</id>
            <dependencies>
                <!-- Start Aspose -->
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-cells</artifactId>
                    <version>${aspose.cells.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-words</artifactId>
                    <version>${aspose.words.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-slides</artifactId>
                    <version>${aspose.slides.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-pdf</artifactId>
                    <version>${aspose.pdf.version}</version>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-email</artifactId>
                    <version>${aspose.email.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-imaging</artifactId>
                    <version>${aspose.imaging.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-diagram</artifactId>
                    <version>${aspose.diagram.version}</version>
                </dependency>
                <!-- End Aspose -->
                <dependency>
                    <groupId>org.apache.commons</groupId>
                    <artifactId>commons-lang3</artifactId>
                    <version>3.3.2</version>
                </dependency>
            </dependencies>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-shade-plugin</artifactId>
                        <configuration>
                            <outputFile>${project.build.directory}/${project.build.finalName}-shaded-slim.jar</outputFile>
                            <artifactSet>
                                <includes>
                                    <include>com.groupdocs:*</include>
                                </includes>
                            </artifactSet>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>com.github.wvengen</groupId>
                        <artifactId>proguard-maven-plugin</artifactId>
                        <configuration>
                            <injar>${project.build.finalName}-shaded-slim.jar</injar>
                            <outjar>${project.build.finalName}-shaded-slim-final.jar</outjar>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-install-plugin</artifactId>
                        <configuration>
                            <file>${project.build.directory}/${project.build.finalName}-shaded-slim-final.jar</file>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>release</id>
            <dependencies>
                <!-- Start Aspose -->
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-cells</artifactId>
                    <version>${aspose.cells.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-words</artifactId>
                    <version>${aspose.words.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-slides</artifactId>
                    <version>${aspose.slides.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-pdf</artifactId>
                    <version>${aspose.pdf.version}</version>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-email</artifactId>
                    <version>${aspose.email.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-imaging</artifactId>
                    <version>${aspose.imaging.version}</version>
                    <type>jar</type>
                </dependency>
                <dependency>
                    <groupId>com.aspose</groupId>
                    <artifactId>aspose-diagram</artifactId>
                    <version>${aspose.diagram.version}</version>
                </dependency>
                <!-- End Aspose -->
                <dependency>
                    <groupId>org.apache.commons</groupId>
                    <artifactId>commons-lang3</artifactId>
                    <version>3.3.2</version>
                </dependency>
            </dependencies>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-shade-plugin</artifactId>
                        <configuration>
                            <outputFile>${project.build.directory}/${project.build.finalName}-shaded-release.jar</outputFile>
                            <artifactSet>
                                <includes>
                                    <include>com.groupdocs:*</include>
                                </includes>
                            </artifactSet>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>com.github.wvengen</groupId>
                        <artifactId>proguard-maven-plugin</artifactId>
                        <configuration>
                            <injar>${project.build.finalName}-shaded-release.jar</injar>
                            <outjar>${project.build.finalName}.jar</outjar>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-install-plugin</artifactId>
                        <configuration>
                            <file>${project.build.directory}/${project.build.finalName}.jar</file>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                    </plugin>
                    <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</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <excludes>
                                <!-- remove exclude tag for generate real sources -->
                                <exclude>**/com/groupdocs/annotation/**</exclude>
                            </excludes>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-release-plugin</artifactId>
                        <configuration>
                            <preparationGoals>clean install -Prelease</preparationGoals>
                            <!--<pushChanges>false</pushChanges>-->
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <configuration>
                            <passphrase>${gpg.passphrase}</passphrase>
                            <publicKeyring>${gpg.publicKeyring}</publicKeyring>
                        </configuration>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>javadoc</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-install-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <groupId>org.apache.maven.plugins</groupId>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    <scm>
        <url>https://bitbucket.org/groupdocs/groupdocs-java-annotation</url>
        <connection>scm:git:ssh://git@bitbucket.org/groupdocs/groupdocs-java-annotation</connection>
        <developerConnection>scm:git:ssh://git@bitbucket.org/groupdocs/groupdocs-java-annotation</developerConnection>
    </scm>
</project>
