swinky-root
Used in: 
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
    <groupId>ca.weblite</groupId>
    <artifactId>swinky-root</artifactId>
    <version>0.0.24</version>
</dependency><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>ca.weblite</groupId>
    <artifactId>swinky-root</artifactId>
    <version>0.0.24</version>
    <packaging>pom</packaging>
    <name>swinky-root</name>
    <!--
       =========
       Central Requirements
       =========
       1. <url>, <description>, and <licenses>
       2. <scm> (with <connection>, <developerConnection>, <url>)
       3. <developers>
    -->
    <description>Kotlin DSL for building Swing UIs declaratively.</description>
    <url>https://github.com/shannah/swinky</url>
    <properties>
        <!-- We'll set this via environment variable in CI -->
        <gpg.passphrase>${env.GPG_PASSPHRASE}</gpg.passphrase>
        <kotlin.version>1.8.22</kotlin.version>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
    </properties>
    <licenses>
        <license>
            <!-- Example: MIT -->
            <name>MIT License</name>
            <url>https://opensource.org/licenses/MIT</url>
            <distribution>repo</distribution>
        </license>
    </licenses>
    <scm>
        <!--
            For a GitHub-based project, typical example:
            If your repository is public on GitHub:
        -->
        <connection>scm:git:git://github.com/shannah/swinky.git</connection>
        <developerConnection>scm:git:ssh://git@github.com:shannah/swinky.git</developerConnection>
        <url>https://github.com/shannah/swinky</url>
        <!-- If you have a tag base, e.g. <tag>HEAD</tag> or <tag>v1.0.0</tag> -->
    </scm>
    <developers>
        <developer>
            <id>shannah</id>
            <name>Steve Hannah</name>
            <email>steve@weblite.ca</email>
            <!-- optional: <organization>... </organization> <organizationUrl>... </organizationUrl> -->
        </developer>
        <!-- additional <developer> entries if multiple contributors -->
    </developers>
    <modules>
        <module>codegen</module>
        <module>main</module>
        <module>jgoodies</module>
        <module>swingx</module>
        <module>coroutines</module>
    </modules>
    <profiles>
        <profile>
            <id>sign-artifacts</id>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>3.0.1</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <!-- Use the property as the passphrase -->
                            <passphrase>${gpg.passphrase}</passphrase>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>ossrh</id>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
            <build>
                <plugins>
                    <!-- The Nexus Staging Maven Plugin -->
                    <plugin>
                        <groupId>org.sonatype.plugins</groupId>
                        <artifactId>nexus-staging-maven-plugin</artifactId>
                        <version>1.6.13</version>
                        <extensions>true</extensions>
                        <configuration>
                            <!-- 'ossrh' matches the <serverId> in your <settings.xml> (or GitHub Actions) -->
                            <serverId>ossrh</serverId>
                            <!-- Switch if your group uses 'https://oss.sonatype.org/' instead -->
                            <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                            <autoReleaseAfterClose>true</autoReleaseAfterClose>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
    <build>
        <plugins>
            <!-- 1) Attach a sources-jar (containing .java/.kt files) -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>3.2.1</version>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <!-- 'verify' is a convenient phase for producing the jars before deploy -->
                        <phase>verify</phase>
                        <goals>
                            <!-- 'jar-no-fork' means it won't run a separate compile;
                                 it just packages your existing sources into a jar. -->
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!-- 2) Attach a javadoc-jar -->
            <plugin>
                <groupId>org.jetbrains.dokka</groupId>
                <artifactId>dokka-maven-plugin</artifactId>
                <version>1.8.10</version>
                <executions>
                    <execution>
                        <phase>verify</phase>
                        <goals>
                            <goal>javadocJar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-maven-plugin</artifactId>
                <version>${kotlin.version}</version>
                <executions>
                    <execution>
                        <id>compile</id>
                        <phase>compile</phase>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>test-compile</id>
                        <phase>test-compile</phase>
                        <goals>
                            <goal>test-compile</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <jvmTarget>${maven.compiler.target}</jvmTarget>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.sonatype.central</groupId>
                <artifactId>central-publishing-maven-plugin</artifactId>
                <version>0.7.0</version>
                <extensions>true</extensions>
                <configuration>
                    <publishingServerId>central</publishingServerId>
                    <autoPublish>true</autoPublish>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>