<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>io.github.homebeaver</groupId>
  <artifactId>swingset3</artifactId>
  <version>1.7.6</version>
  <packaging>pom</packaging> <!-- multi-module project -->
  <modules>
    <module>swingx-mavensupport</module>
    <module>swingx-testsupport</module>
    <module>swingx-common</module>
    <module>swingx-autocomplete</module>
    <module>swingx-action</module>
    <module>swingx-painters</module>
    <module>swingx-graphics</module>
    <module>swingx-mapviewer</module>
    <module>swingx-plaf</module>
    <module>swingx-core</module>
    <module>swingx-beaninfo</module>
  </modules>

  <url>https://github.com/homebeaver/SwingSet3</url>
  <developers>
	<developer>
		<name>Eugen H</name>
	</developer>
  </developers>
  
  <name>SwingX</name>
  <description>Contains extensions to the Swing GUI toolkit, including new and enhanced components that provide functionality commonly required by rich client applications.</description>
  
  <properties>
    <project.generatedSourcesDirectory>${project.build.directory}/generated-sources</project.generatedSourcesDirectory>
    <project.generatedAnnotations>${project.generatedSourcesDirectory}/annotations</project.generatedAnnotations>
  </properties>
  
  <licenses>
    <license>
      <name>Lesser General Public License (LGPL)</name>
      <url>http://www.gnu.org/copyleft/lesser.html</url>
    </license>
  </licenses>

	<distributionManagement>
	  <snapshotRepository>
	    <id>ossrh</id>
	    <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
	  </snapshotRepository>
	  <repository>
	    <id>ossrh</id>
	    <url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
	  </repository>
	</distributionManagement>
  
  <build>
  <plugins>
	  <!-- see https://central.sonatype.org/publish/publish-maven/#distribution-management-and-authentication -->
	  <plugin>
	    <groupId>org.sonatype.plugins</groupId>
	    <artifactId>nexus-staging-maven-plugin</artifactId>
	    <version>1.6.13</version>
	    <extensions>true</extensions>
	    <configuration>
	      <serverId>ossrh</serverId>
	      <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
	      <autoReleaseAfterClose>true</autoReleaseAfterClose>
	    </configuration>
	  </plugin>
	  
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>3.2.0</version>
        <executions>
          <execution>
            <id>attach-sources</id>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.3.2</version>
		<executions>
			<execution>
				<id>attach-javadocs</id>
				<goals>
					<goal>jar</goal>
				</goals>
			</execution>
		</executions>
      </plugin>
      
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.1</version>
        <configuration>
        <!-- Compile for the specified Java SE release. 
        	When changed adopte org.jdesktop.beans.JavaBeanProcessor
        	Supported releases: 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 -->
	 	  <release>16</release>
		  <!-- Provide source compatibility with the specified Java SE release. 
				Supported releases: 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17     -->
          <source>8</source>
          <!-- Generate class files suitable for the specified Java SE release. -->
          <target>8</target>
          <generatedSourcesDirectory>${project.generatedAnnotations}</generatedSourcesDirectory>
          <showWarnings>true</showWarnings>
        </configuration>
      </plugin>
      
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.22.2</version>
        <inherited>true</inherited>
        <configuration>
          <!-- parallel>classes</parallel -->
          <!-- useSystemClassLoader>true</useSystemClassLoader -->
          <includes>
            <include>**/*Test.java</include>
          </includes>
          <forkCount>1</forkCount>
          <reuseForks>false</reuseForks>
          <!--reportFormat>xml</reportFormat -->
          <!--classesDirectory>${project.build.directory}/emma-classes</classesDirectory -->
        </configuration>
      </plugin>
      
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>3.2.0</version>
        <configuration>
          <archive>
            <manifest>
              <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
            </manifest>
          </archive>
        </configuration>
      </plugin>

      <plugin>
        <groupId>com.amashchenko.maven.plugin</groupId>
        <artifactId>gitflow-maven-plugin</artifactId>
        <version>1.14.0</version>
        <configuration>
          <!-- see goals wiki page for configuration options -->
          <autoVersionSubmodules>true</autoVersionSubmodules>
          <gitFlowConfig>
            <!-- default git flow prefixes -->
            <developmentBranch>master</developmentBranch>
            <featureBranchPrefix>feature/</featureBranchPrefix>
            <releaseBranchPrefix>release/</releaseBranchPrefix>
            <hotfixBranchPrefix>hotfix/</hotfixBranchPrefix>
            <!-- non default 'v' prefix -->
            <versionTagPrefix>v</versionTagPrefix>
          </gitFlowConfig>
        </configuration>
      </plugin>
      
      <plugin>
        <groupId>org.simplify4u.plugins</groupId>
        <artifactId>sign-maven-plugin</artifactId>
        <version>1.0.0</version>
        <executions>
            <execution>
                <goals>
                    <goal>sign</goal>
                </goals>
                <configuration>
                    <!-- the same id as in settings.xml -->
                    <serverId>sign-key-id</serverId>
                </configuration>
            </execution>
        </executions>
      </plugin>
      
    </plugins>
  </build>
  
  <dependencies>
    <dependency>
      <!-- this is an external source dependency for building ServiceLoader 
        service files marking optional so we do not export this source only dependency 
        to our consumers specify here to ensure that file movement maintains correct 
        services across all modules -->
      <groupId>org.kohsuke.metainf-services</groupId>
      <artifactId>metainf-services</artifactId>
      <version>1.8</version>
      <type>jar</type>
      <scope>compile</scope>
      <optional>true</optional>
    </dependency>
  </dependencies>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.6</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.1</version>
        <type>jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>com.jhlabs</groupId>
        <artifactId>filters</artifactId>
        <version>2.0.235</version>
        <type>jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-core</artifactId>
        <version>2.25.0</version>
        <scope>test</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  
  <scm>
  	<url>https://github.com/homebeaver/SwingSet3</url>
  	<connection>scm:git:https://github.com/homebeaver/SwingSet3.git</connection>
  	<developerConnection>scm:git:https://github.com/homebeaver/</developerConnection>
  </scm>
  <inceptionYear>2007</inceptionYear>
</project>
