general-parent
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>me.chrissw-r1</groupId>
<artifactId>general-parent</artifactId>
<version>3.0.34</version>
</dependency><?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/xsd/maven-4.0.0.xsd" child.project.url.inherit.append.path="false">
<modelVersion>4.0.0</modelVersion>
<!-- project identifier -->
<groupId>me.chrissw-r1</groupId>
<artifactId>general-parent</artifactId>
<version>3.0.34</version>
<packaging>pom</packaging>
<!-- project metadata -->
<name>General Parent</name>
<description>
This project only contains the default properties and settings,
which should be used in all projects of ChrissW-R1.
</description>
<url>${project.site.baseUrl}/${project.site.urlPath}</url>
<inceptionYear>2018</inceptionYear>
<organization>
<name>ChrissW-R1</name>
<url>https://ChrissW-R1.me</url>
</organization>
<licenses>
<license>
<name>${license.signature}</name>
<url>${license.url}</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>ChrissW-R1</id>
<name>ChrissW-R1</name>
<email>contact@ChrissW-R1.me</email>
<url>https://ChrissW-R1.me</url>
<timezone>Europe/Berlin</timezone>
<roles>
<role>manager</role>
<role>architect</role>
<role>developer</role>
</roles>
<properties>
<picUrl>https://gravatar.com/avatar/625826a28e0cb12855ef6f5d169f8b67</picUrl>
</properties>
</developer>
</developers>
<properties>
<!-- technically-based properties -->
<project.fileEncoding>UTF-8</project.fileEncoding>
<project.build.sourceEncoding>${project.fileEncoding}</project.build.sourceEncoding>
<project.reporting.outputEncoding>${project.fileEncoding}</project.reporting.outputEncoding>
<project.parent.relativedir />
<project.parent.basedir>${project.basedir}/${project.parent.relativedir}</project.parent.basedir>
<project.module-root.artifactId>general-parent</project.module-root.artifactId>
<project.module-root.relativedir>${project.parent.relativedir}</project.module-root.relativedir>
<project.module-root.basedir>${project.basedir}/${project.module-root.relativedir}</project.module-root.basedir>
<project.build.artifact.extension>${project.packaging}</project.build.artifact.extension>
<project.build.artifact.fileName>${project.build.finalName}.${project.build.artifact.extension}</project.build.artifact.fileName>
<project.scm.id>project-repo</project.scm.id>
<project.site.urlPath>${project.groupId}/${project.module-root.artifactId}/${project.version}</project.site.urlPath>
<project.site.baseUrl>https://${project.site.fullDomain}</project.site.baseUrl>
<project.site.deploy.baseUrl>ftps://${project.site.baseDomain}</project.site.deploy.baseUrl>
<project.site.deploy.url>${project.site.deploy.baseUrl}/${project.site.urlPath}</project.site.deploy.url>
<properties.file>build.properties</properties.file>
<deploy-pom.file>${project.build.finalName}-deploy.pom</deploy-pom.file>
<semver.regex>(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)(?:[-+]([0-9A-Za-z][0-9A-Za-z-+\.]+))?</semver.regex>
<java.version.prefixed>1.${java.version}</java.version.prefixed>
<netbeans.hint.jdkPlatform>JDK_${java.version.prefixed}</netbeans.hint.jdkPlatform>
<copy-artifact.dir />
<effective-pom.path>${project.build.directory}/${project.build.finalName}-effective.pom</effective-pom.path>
<general-parent.version>3.0.34</general-parent.version>
<third-party-properties.filename>THIRD-PARTY.properties</third-party-properties.filename>
<third-party-properties.src.path>${project.module-root.basedir}/src/license</third-party-properties.src.path>
<third-party-properties.target.path>${project.build.directory}/generated-resources</third-party-properties.target.path>
<third-party-properties.target.fullPath>${third-party-properties.target.path}/${third-party-properties.filename}</third-party-properties.target.fullPath>
<!-- project-specific properties -->
<project.site.baseDomain>urelion.world</project.site.baseDomain>
<project.site.fullDomain>docs.${project.site.baseDomain}</project.site.fullDomain>
<project.gitlab.id>25831549</project.gitlab.id>
<java.version>11</java.version>
<!-- license definition -->
<license.name>Apache</license.name>
<license.version>2.0</license.version>
<license.abbr>ASL</license.abbr>
<license.id>${license.name}-${license.version}</license.id>
<license.url>https://raw.githubusercontent.com/spdx/license-list-data/main/text/${license.id}.txt</license.url>
<license.signature>${license.name} License (${license.abbr}), Version ${license.version} (${license.id})</license.signature>
<!-- dependency versions -->
<ant-contrib.version>1.0b3</ant-contrib.version>
<wagon.version>3.5.3</wagon.version>
<groovy.version>5.0.3</groovy.version>
<!-- plugin versions -->
<plugin.takari-lifecycle.version>2.3.2</plugin.takari-lifecycle.version>
<plugin.gmavenplus.version>4.2.1</plugin.gmavenplus.version>
<plugin.multi-module.version>1.2.1</plugin.multi-module.version>
<plugin.dependency.version>3.9.0</plugin.dependency.version>
<plugin.versions.version>2.20.1</plugin.versions.version>
<plugin.clean.version>3.5.0</plugin.clean.version>
<plugin.help.version>3.5.1</plugin.help.version>
<plugin.replacer.version>1.5.3</plugin.replacer.version>
<plugin.properties.version>1.2.1</plugin.properties.version>
<plugin.buildhelper.version>3.6.1</plugin.buildhelper.version>
<plugin.buildplan.version>2.2.2</plugin.buildplan.version>
<plugin.license.version>2.7.0</plugin.license.version>
<plugin.spdx-license-fetch.version>1.1.0</plugin.spdx-license-fetch.version>
<plugin.resources.version>3.4.0</plugin.resources.version>
<plugin.antrun.version>3.2.0</plugin.antrun.version>
<plugin.compiler.version>3.14.1</plugin.compiler.version>
<plugin.dependency-check.version>12.1.9</plugin.dependency-check.version>
<plugin.cyclonedx.version>2.9.1</plugin.cyclonedx.version>
<plugin.deploy-pom.version>1.2.4</plugin.deploy-pom.version>
<plugin.jar.version>3.5.0</plugin.jar.version>
<plugin.source.version>3.4.0</plugin.source.version>
<plugin.gpg.version>3.2.8</plugin.gpg.version>
<plugin.site.version>3.21.0</plugin.site.version>
<plugin.project-info-reports.version>3.9.0</plugin.project-info-reports.version>
<plugin.release.version>3.3.1</plugin.release.version>
<plugin.scm.version>2.2.1</plugin.scm.version>
<plugin.central-publish.version>0.9.0</plugin.central-publish.version>
</properties>
<scm child.scm.url.inherit.append.path="false" child.scm.connection.inherit.append.path="false" child.scm.developerConnection.inherit.append.path="false">
<url>https://github.com/${project.organization.name}/${project.module-root.artifactId}</url>
<connection>scm:git:${project.scm.url}.git</connection>
<developerConnection>${project.scm.connection}</developerConnection>
<tag>3.0.34</tag>
</scm>
<issueManagement>
<url>${project.scm.url}/issues</url>
<system>GitHub</system>
</issueManagement>
<distributionManagement>
<repository>
<id>project-repo</id>
<name>Project Repository</name>
<url>https://maven.pkg.github.com/${project.organization.name}/${project.module-root.artifactId}</url>
</repository>
<site>
<id>project-site-repo</id>
<name>Project's Site - Repository</name>
<url>${project.site.deploy.url}</url>
</site>
</distributionManagement>
<repositories>
<repository>
<id>project-repo</id>
<name>Project Repository</name>
<url>https://maven.pkg.github.com/${project.organization.name}/${project.module-root.artifactId}</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>project-repo</id>
<name>Project Repository</name>
<url>https://maven.pkg.github.com/${project.organization.name}/${project.module-root.artifactId}</url>
</pluginRepository>
<pluginRepository>
<id>general-parent</id>
<name>General Parent</name>
<url>https://maven.pkg.github.com/ChrissW-R1/general-parent</url>
</pluginRepository>
</pluginRepositories>
<build>
<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>${wagon.version}</version>
</extension>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh-external</artifactId>
<version>${wagon.version}</version>
</extension>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ftp</artifactId>
<version>${wagon.version}</version>
</extension>
</extensions>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
<resource>
<directory>${project.basedir}</directory>
<includes>
<include>README.md</include>
</includes>
</resource>
<resource>
<directory>general-resources/src/main/resources</directory>
<includes>
<include>project.properties</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
<pluginManagement>
<plugins>
<plugin>
<groupId>io.takari.maven.plugins</groupId>
<artifactId>takari-lifecycle-plugin</artifactId>
<version>${plugin.takari-lifecycle.version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<version>${plugin.gmavenplus.version}</version>
<dependencies>
<dependency>
<groupId>org.apache.groovy</groupId>
<artifactId>groovy-ant</artifactId>
<version>${groovy.version}</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>remove-parsed-version-qualifier-property</id>
<phase>generate-sources</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<scripts>
<script><![CDATA[project.properties.remove('parsedVersion.qualifier?')]]></script>
</scripts>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>me.chrissw-r1</groupId>
<artifactId>multi-module-maven-plugin</artifactId>
<version>${plugin.multi-module.version}</version>
<configuration>
<resolveUrl>true</resolveUrl>
<resolveRepositories>true</resolveRepositories>
</configuration>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>${plugin.dependency.version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>${plugin.versions.version}</version>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>${plugin.clean.version}</version>
<configuration>
<filesets>
<fileset>
<directory>./</directory>
<includes>
<include>dependency-reduced-pom.xml</include>
<include>${project.build.finalName}-deploy.pom</include>
<include>${project.artifactId}-*-deploy.pom</include>
<!--include>.github/workflows/maven-build.yml</include>
<include>.gitlab-ci.yml</include-->
<include>tsconfig.json</include>
<include>eslint.config.js</include>
<include>package.json</include>
<include>Gruntfile.js</include>
<include>Gruntfile.cjs</include>
<include>webpack.config.js</include>
<include>webpack.config.cjs</include>
</includes>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<artifactId>maven-help-plugin</artifactId>
<version>${plugin.help.version}</version>
</plugin>
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<version>${plugin.replacer.version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>${plugin.properties.version}</version>
<executions>
<execution>
<id>read-properties</id>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>${project.module-root.basedir}/build.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${plugin.buildhelper.version}</version>
<executions>
<execution>
<id>parse-version</id>
<phase>initialize</phase>
<goals>
<goal>parse-version</goal>
</goals>
</execution>
<execution>
<id>base-version-property</id>
<phase>initialize</phase>
<goals>
<goal>regex-property</goal>
</goals>
<configuration>
<name>project.baseVersion</name>
<value>${project.version}</value>
<regex>(\d+(\.\d+)*)(.*)</regex>
<replacement>$1</replacement>
</configuration>
</execution>
<execution>
<id>java-qualified-version-property</id>
<phase>validate</phase>
<goals>
<goal>regex-property</goal>
</goals>
<configuration>
<name>java.version.qualified</name>
<value>${java.version}</value>
<regex>^([1-9]|10)$</regex>
<replacement>${java.version.prefixed}</replacement>
<failIfNoMatch>false</failIfNoMatch>
</configuration>
</execution>
<execution>
<id>timestamp-property</id>
<phase>initialize</phase>
<goals>
<goal>timestamp-property</goal>
</goals>
<configuration>
<name>project.versionYear</name>
<pattern>yyyy</pattern>
<locale>en,US</locale>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildplan-maven-plugin</artifactId>
<version>${plugin.buildplan.version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>${plugin.license.version}</version>
<configuration>
<licenseFile>${project.module-root.basedir}/LICENSE</licenseFile>
<licenseName>apache_v2</licenseName>
<missingFile>${third-party-properties.target.fullPath}</missingFile>
<licensesConfigFile>${project.module-root.basedir}/src/license/licenses.xml</licensesConfigFile>
<useMissingFile>true</useMissingFile>
<sortArtifactByName>true</sortArtifactByName>
<fileTemplate>/org/codehaus/mojo/license/third-party-file-groupByLicense.ftl</fileTemplate>
<licenseMerges>
<licenseMerge>
GNU Affero General Public License (AGPL), Version 3.0+ (AGPL-3.0-or-later)
| AGPL-3.0-or-later
| GNU Affero General Public License (AGPL) version 3.0
</licenseMerge>
<licenseMerge>
Apache License (ASL), Version 1.1 (Apache-1.1)
| Apache-1.1
| The Apache Software License, Version 1.1
| http://ant-contrib.sourceforge.net/tasks/LICENSE.txt
</licenseMerge>
<licenseMerge>
Apache License (ASL), Version 2.0 (Apache-2.0)
| Apache-2.0
| Apache 2
| Apache 2.0
| Apache License 2.0
| Apache License version 2.0
| Apache License, 2.0
| Apache License, Version 2
| Apache License, Version 2.0
| The Apache License, Version 2.0
| The Apache Software License, Version 2.0
</licenseMerge>
<licenseMerge>
BSD 2-Clause License (BSD), (BSD-2-Clause)
| BSD-2-Clause
| BSD 2-Clause
| BSD 2-Clause License
| BSD License
</licenseMerge>
<licenseMerge>
BSD 3-Clause License (BSD), (BSD-3-Clause)
| BSD-3-Clause
| BSD 3-Clause License
</licenseMerge>
<licenseMerge>
Creative Commons (CC) Attribution International Public License, Version 4.0 (CC-BY-4.0)
| CC-BY-4.0
| Creative Commons Attribution 4.0 International Public License
</licenseMerge>
<licenseMerge>
Common Development and Distribution License (CDDL), Version 1.0 (CDDL-1.0)
| CDDL-1.0
| COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
</licenseMerge>
<licenseMerge>
Common Development and Distribution License (CDDL), Version 1.1 (CDDL-1.1)
| CDDL-1.1
| CDDL 1.1
| Common Development and Distribution License (CDDL), Version 1.1
</licenseMerge>
<licenseMerge>
Common Public License Version (CPL), Version 1.0 (CPL-1.0)
| CPL-1.0
| Common Public License Version 1.0
</licenseMerge>
<licenseMerge>
Eclipse Distribution License (EDL), Version 1.0 (EDL-1.0)
| EDL-1.0
| EDL 1.0
| Eclipse Distribution License - v 1.0
</licenseMerge>
<licenseMerge>
Eclipse Public License (EPL), Version 1.0 (EPL-1.0)
| EPL-1.0
| Eclipse Public License - v 1.0
| Eclipse Public License, Version 1.0
</licenseMerge>
<licenseMerge>
Eclipse Public License (EPL), Version 2.0 (EPL-2.0)
| EPL-2.0
| EPL 2.0
| Eclipse Public License - v 2.0
| Eclipse Public License v2.0
| Eclipse Public License, Version 2.0
</licenseMerge>
<licenseMerge>
EPSG database distribution license (EPSG-DDL)
| EPSG-DDL
| EPSG database distribution license
</licenseMerge>
<licenseMerge>
European Union Public License (EUPL), Version 1.1 (EUPL-1.1)
| EUPL-1.1
| European Union Public License v1.1
</licenseMerge>
<licenseMerge>
GNU Free Documentation License (FDL), Version 1.3+ (GFDL-1.3-or-later)
| GFDL-1.3-or-later
| GNU Free Documentation License (FDL) version 1.3
</licenseMerge>
<licenseMerge>
GNU General Public License (GPL), Version 1.0+ (GPL-1.0-or-later)
| GPL-1.0-or-later
| GNU General Public License (GPL) version 1.0
</licenseMerge>
<licenseMerge>
GNU General Public License (GPL), Version 2.0+ (GPL-2.0-or-later)
| GPL-2.0-or-later
| GNU General Public License (GPL) version 2.0
| GNU General Public License version 2 (GPLv2)
| GNU General Public License, Version 2
| GPL-2.0
</licenseMerge>
<licenseMerge>
GNU General Public License (GPL), Version 3.0+ (GPL-3.0-or-later)
| GPL-3.0-or-later
| GNU General Public License (GPL) version 3.0
</licenseMerge>
<licenseMerge>
GNU General Public License (GPL) with Classpath exception (CPE), Version 2.0 (GPL-2.0-with-classpath-exception)
| GPL-2.0-with-classpath-exception
| GNU General Public License, version 2, with the Classpath Exception
| GPL2 w/ CPE
| The GNU General Public License (GPL), Version 2, With Classpath Exception
</licenseMerge>
<licenseMerge>
Java Distribution License (JDL), Version 1.1.x (JDL-1.1.x)
| JDL-1.1.x
| JDL (Java Distribution License)
</licenseMerge>
<licenseMerge>
GNU Lesser General Public License (LGPL), Version 2.1 (LGPL-2.1-only)
| LGPL-2.1-only
| GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1
| GNU Lesser General Public License, Version 2.1
| LGPL 2.1
| LGPLv2
</licenseMerge>
<licenseMerge>
GNU Lesser General Public License (LGPL), Version 2.1+ (LGPL-2.1-or-later)
| LGPL-2.1-or-later
| GNU General Lesser Public License (LGPL) version 2.1
| GNU Lesser General Public License (LGPL)
| GNU Lesser General Public License version 2.1 (LGPLv2.1)
| Lesser General Public License (LGPL)
</licenseMerge>
<licenseMerge>
GNU Lesser General Public License (LGPL), Version 3.0+ (LGPL-3.0-or-later)
| LGPL-3.0-or-later
| GNU General Lesser Public License (LGPL) version 3.0
| GNU Lesser General Public License v3.0
</licenseMerge>
<licenseMerge>
MIT License (MIT)
| MIT
| MIT License
| MIT license
| MIT-License
| The MIT License
| The MIT License (MIT)
| The MIT License(MIT)
| jQuery license
</licenseMerge>
<licenseMerge>
Mozilla Public License (MPL), Version 1.1 (MPL-1.1)
| MPL-1.1
| MPL 1.1
</licenseMerge>
<licenseMerge>
OGC Copyright (OGC)
| OGC
| OGC copyright
</licenseMerge>
<licenseMerge>
Public Domain (PD)
| PD
| Public Domain
</licenseMerge>
<licenseMerge>
Universal Permissive License (UPL), Version 1.0 (UPL-1.0)
| UPL-1.0
| Universal Permissive License, Version 1.0
</licenseMerge>
<licenseMerge>
W3C Software Notice and License (W3C)
| W3C
| W3C license
</licenseMerge>
<licenseMerge>
Individual Apache License
| Indv-Apache
| Similar to Apache License but with the acknowledgment clause removed
</licenseMerge>
<licenseMerge>
Individual BSD License
| Indv-BSD
| BSD License for HSQL
| BSD style
| HSQLDB License, a BSD open source license
| Modified BSD
| Modified BSD 3-Clause License
</licenseMerge>
</licenseMerges>
<failOnMissing>false</failOnMissing>
</configuration>
</plugin>
<plugin>
<groupId>me.chrissw-r1</groupId>
<artifactId>spdx-license-fetch-maven-plugin</artifactId>
<version>${plugin.spdx-license-fetch.version}</version>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>${plugin.resources.version}</version>
<configuration>
<escapeString>\</escapeString>
</configuration>
</plugin>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<version>${plugin.dependency-check.version}</version>
<configuration>
<ossIndexServerId>ossindex</ossIndexServerId>
<nvdApiServerId>nvd.apikey</nvdApiServerId>
<pathToCore>${dotnetcore.path}</pathToCore>
<nodeAuditAnalyzerEnabled>false</nodeAuditAnalyzerEnabled>
<yarnAuditAnalyzerEnabled>false</yarnAuditAnalyzerEnabled>
</configuration>
</plugin>
<plugin>
<groupId>org.cyclonedx</groupId>
<artifactId>cyclonedx-maven-plugin</artifactId>
<version>${plugin.cyclonedx.version}</version>
</plugin>
<plugin>
<groupId>me.chrissw-r1</groupId>
<artifactId>deploy-pom-maven-plugin</artifactId>
<version>${plugin.deploy-pom.version}</version>
<configuration>
<outputPom>${deploy-pom.file}</outputPom>
</configuration>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>${plugin.jar.version}</version>
<configuration>
<archive>
<manifestEntries>
<Built-By>${project.organization.name}</Built-By>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>${plugin.source.version}</version>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>${plugin.site.version}</version>
<configuration>
<output>${project.build.directory}/site.xml</output>
</configuration>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>${plugin.antrun.version}</version>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>${ant-contrib.version}</version>
<exclusions>
<exclusion>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<executions>
<execution>
<id>check-third-party-properties</id>
<phase>site</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpathref="maven.runtime.classpath" />
<if>
<available file="${third-party-properties.target.fullPath}" />
<then>
<echo message="third-party.properties exists." level="info" />
<property name="third-party-properties.target.missing" value="false" />
</then>
<else>
<echo message="third-party.properties missing." level="info" />
<property name="third-party-properties.target.missing" value="true" />
</else>
</if>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-gpg-plugin</artifactId>
<version>${plugin.gpg.version}</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>${plugin.release.version}</version>
<configuration>
<goals>deploy site-deploy</goals>
<autoVersionSubmodules>true</autoVersionSubmodules>
<tagNameFormat>@{project.version}</tagNameFormat>
<scmCommentPrefix>[maven-release-plugin] [skip ci]</scmCommentPrefix>
<preparationGoals>clean install scm:add@stage-release-changes</preparationGoals>
<preparationProfiles>stage-release-changes</preparationProfiles>
<arguments>-DfullBuild -Ddistribution -Dexecutable</arguments>
</configuration>
</plugin>
<plugin>
<artifactId>maven-scm-plugin</artifactId>
<version>${plugin.scm.version}</version>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>${plugin.central-publish.version}</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
<deploymentName>${project.module-root.name} ${project.version}</deploymentName>
<autoPublish>true</autoPublish>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>io.takari.maven.plugins</groupId>
<artifactId>takari-lifecycle-plugin</artifactId>
</plugin>
<plugin>
<groupId>me.chrissw-r1</groupId>
<artifactId>multi-module-maven-plugin</artifactId>
<executions>
<execution>
<id>multi-module-properties-default</id>
<goals>
<goal>module-root-properties</goal>
</goals>
</execution>
<execution>
<id>multi-module-properties-site</id>
<phase>pre-site</phase>
<goals>
<goal>module-root-properties</goal>
</goals>
</execution>
<execution>
<id>list-modules</id>
<goals>
<goal>list-modules</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-readme</id>
<phase>process-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.module-root.basedir}</outputDirectory>
<resources>
<resource>
<directory>${project.module-root.basedir}/src/main/resources</directory>
<includes>
<include>README.md</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>me.chrissw-r1</groupId>
<artifactId>deploy-pom-maven-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>${plugin.project-info-reports.version}</version>
</plugin>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<version>${plugin.dependency-check.version}</version>
<reportSets>
<reportSet>
<id>aggregate-dependency-check</id>
<reports>
<report>aggregate</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>${plugin.license.version}</version>
<reportSets>
<reportSet>
<id>third-party-report</id>
<reports>
<report>third-party-report</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
<profiles>
<profile>
<id>environment-parameters</id>
<activation>
<file>
<exists>${properties.file}</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>echo-build-parameters</id>
<activation>
<property>
<name>debug</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-help-plugin</artifactId>
<executions>
<execution>
<id>show-active-profiles</id>
<phase>validate</phase>
<goals>
<goal>active-profiles</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildplan-maven-plugin</artifactId>
<executions>
<execution>
<id>echo-phases</id>
<phase>generate-sources</phase>
<goals>
<goal>list-phase</goal>
</goals>
<configuration>
<showLifecycles>true</showLifecycles>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>echo-properties</id>
<phase>generate-sources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<echoproperties />
</target>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>echo-updates</id>
<activation>
<property>
<name>debug</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<executions>
<execution>
<id>display-updates</id>
<phase>validate</phase>
<goals>
<goal>display-property-updates</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>effective-pom</id>
<activation>
<property>
<name>debug</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-help-plugin</artifactId>
<executions>
<execution>
<id>generate-effective-pom</id>
<phase>generate-sources</phase>
<goals>
<goal>effective-pom</goal>
</goals>
<configuration>
<output>${effective-pom.path}</output>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<executions>
<execution>
<id>remove-wrong-qualifier-property</id>
<phase>process-sources</phase>
<goals>
<goal>replace</goal>
</goals>
<configuration>
<file>${effective-pom.path}</file>
<replacements>
<replacement>
<token><parsedVersion.qualifier\?>(.*)</parsedVersion.qualifier\?></token>
</replacement>
</replacements>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>check-dependencies</id>
<activation>
<property>
<name>fullBuild</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<executions>
<execution>
<id>check-dependencies</id>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>add-licenses</id>
<activation>
<property>
<name>fullBuild</name>
</property>
</activation>
<build>
<resources>
<resource>
<directory>${project.build.directory}/generated-resources</directory>
<includes>
<include>lrgrwrks.txt</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<executions>
<execution>
<id>update-license</id>
<phase>generate-resources</phase>
<goals>
<goal>update-project-license</goal>
</goals>
</execution>
<execution>
<id>add-licenses</id>
<phase>generate-resources</phase>
<goals>
<goal>add-third-party</goal>
<goal>download-licenses</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>me.chrissw-r1</groupId>
<artifactId>spdx-license-fetch-maven-plugin</artifactId>
<executions>
<execution>
<id>download-spdx-licenses</id>
<goals>
<goal>fetch-spdx-licenses</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>third-party-filtering</id>
<phase>pre-site</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${third-party-properties.target.path}</outputDirectory>
<resources>
<resource>
<directory>${third-party-properties.src.path}</directory>
<includes>
<include>${third-party-properties.filename}</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>attach-third-party-properties</id>
<phase>post-site</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>${third-party-properties.target.fullPath}</file>
<type>properties</type>
<classifier>third-party</classifier>
</artifact>
</artifacts>
<skipAttach>${third-party-properties.target.missing}</skipAttach>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>modify-deploy-pom</id>
<activation>
<property>
<name>fullBuild</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>me.chrissw-r1</groupId>
<artifactId>deploy-pom-maven-plugin</artifactId>
<executions>
<execution>
<id>add-defaults-default</id>
<goals>
<goal>add-defaults</goal>
</goals>
</execution>
<execution>
<id>add-defaults-site</id>
<phase>pre-site</phase>
<goals>
<goal>add-defaults</goal>
</goals>
</execution>
<execution>
<id>copy-from-effective</id>
<goals>
<goal>copy-from-effective</goal>
</goals>
<configuration>
<copyEffectiveUrl>true</copyEffectiveUrl>
<copyEffectiveLicenses>true</copyEffectiveLicenses>
<copyEffectiveDevelopers>true</copyEffectiveDevelopers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>generate-sbom</id>
<activation>
<property>
<name>fullBuild</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.cyclonedx</groupId>
<artifactId>cyclonedx-maven-plugin</artifactId>
<executions>
<execution>
<id>generate-sbom</id>
<phase>prepare-package</phase>
<goals>
<goal>makeAggregateBom</goal>
</goals>
<configuration>
<outputName>${project.build.finalName}-sbom</outputName>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>attach-docs-and-sources</id>
<activation>
<property>
<name>fullBuild</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>attach-site-descriptor</id>
<activation>
<property>
<name>fullBuild</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<executions>
<execution>
<id>attach-site-descriptor</id>
<goals>
<goal>effective-site</goal>
<goal>attach-descriptor</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>sign-artifacts</id>
<activation>
<property>
<name>fullBuild</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hash-artifacts</id>
<activation>
<property>
<name>fullBuild</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>hash-artifacts</id>
<phase>post-integration-test</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<checksum todir="${project.build.directory}" algorithm="SHA-512" fileext=".sha512">
<fileset dir="${project.build.directory}">
<include name="*" />
<exclude name="**/*.asc" />
<exclude name="**/*.md5" />
<exclude name="**/*.sha1" />
<exclude name="**/*.sha256" />
<exclude name="**/*.sha512" />
</fileset>
</checksum>
<checksum todir="${project.build.directory}" algorithm="SHA-256" fileext=".sha256">
<fileset dir="${project.build.directory}">
<include name="*" />
<exclude name="**/*.asc" />
<exclude name="**/*.md5" />
<exclude name="**/*.sha1" />
<exclude name="**/*.sha256" />
<exclude name="**/*.sha512" />
</fileset>
</checksum>
</target>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>clean-dependencies</id>
<build>
<plugins>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>clean-local-repository</id>
<phase>pre-clean</phase>
<goals>
<goal>purge-local-repository</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<executions>
<execution>
<id>clean-nvd-copy</id>
<phase>pre-clean</phase>
<goals>
<goal>purge</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets combine.children="append">
<fileset>
<directory>build-exe</directory>
</fileset>
<fileset>
<directory>node_modules</directory>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<configuration>
<cleanLicensesOutputDirectory>true</cleanLicensesOutputDirectory>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>set-general-parent-version</id>
<properties>
<general-parent.version>${project.version}</general-parent.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<executions>
<execution>
<id>set-general-parent-version</id>
<phase>generate-resources</phase>
<goals>
<goal>replace</goal>
</goals>
<configuration>
<file>pom.xml</file>
<replacements>
<replacement>
<token><general-parent.version>${semver.regex}</general-parent.version></token>
<value><general-parent.version>${project.version}</general-parent.version></value>
</replacement>
</replacements>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<preparationProfiles>set-general-parent-version,stage-release-changes</preparationProfiles>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>stage-release-changes</id>
<build>
<plugins>
<plugin>
<artifactId>maven-scm-plugin</artifactId>
<executions>
<execution>
<id>stage-release-changes</id>
<goals>
<goal>add</goal>
</goals>
<configuration>
<includes>pom.xml,.gitignore,LICENSE,README.md</includes>
<pushChanges>false</pushChanges>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>central-deploy</id>
<build>
<plugins>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>copy-artifact</id>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>copy-artifact</id>
<phase>install</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<mkdir dir="${copy-artifact.dir}" />
<copy todir="${copy-artifact.dir}">
<fileset dir="${project.build.directory}" includes="${project.build.artifact.fileName}" />
</copy>
</target>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<modules>
<module>general-resources</module>
<module>build-parent</module>
</modules>
</project>