cui-parent-pom
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>io.github.cuioss</groupId> <artifactId>cui-parent-pom</artifactId> <version>0.1.3</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>io.github.cuioss</groupId> <artifactId>cui-parent-pom</artifactId> <name>cui parent pom</name> <packaging>pom</packaging> <version>0.1.3</version> <description>Parent pom for all cui-oss projects. It defines the sonatype repositories and the basic maven plugins: In addition it provides sensible release profiles: "release-pom" for pom-only releases and "release" for standard java-releases.</description> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <!-- Repository-Urls --> <public.repo.url>https://oss.sonatype.org/content/groups/public</public.repo.url> <staging.repo.url>https://oss.sonatype.org/content/groups/staging</staging.repo.url> <deploy.snapshot.repo.url>https://s01.oss.sonatype.org/content/repositories/snapshots</deploy.snapshot.repo.url> <deploy.staging.repo.url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2</deploy.staging.repo.url> <!-- Standard maven plugins: org.apache.maven. --> <maven.assembly.plugin.version>3.5.0</maven.assembly.plugin.version> <maven.clean.plugin.version>3.2.0</maven.clean.plugin.version> <maven.compiler.plugin.version>3.11.0</maven.compiler.plugin.version> <maven.dependency.plugin.version>3.5.0</maven.dependency.plugin.version> <maven.deploy.plugin.version>3.1.0</maven.deploy.plugin.version> <maven.enforcer.plugin.version>3.2.1</maven.enforcer.plugin.version> <maven.failsafe.plugin.version>2.22.2</maven.failsafe.plugin.version> <maven.gpg.plugin.version>3.0.1</maven.gpg.plugin.version> <maven.install.plugin.version>3.1.0</maven.install.plugin.version> <maven.jar.plugin.version>3.3.0</maven.jar.plugin.version> <maven.javadoc.plugin.version>3.5.0</maven.javadoc.plugin.version> <maven.release.plugin.version>2.5.3</maven.release.plugin.version> <maven.resources.plugin.version>3.3.0</maven.resources.plugin.version> <maven.site.plugin.version>3.12.1</maven.site.plugin.version> <maven.site.fluido.skin.version>1.11.1</maven.site.fluido.skin.version> <maven.project.info.reports.plugin.version>3.4.2</maven.project.info.reports.plugin.version> <maven.source.plugin.version>3.2.1</maven.source.plugin.version> <maven.surefire.plugin.version>2.22.2</maven.surefire.plugin.version> <maven.surefire_report.plugin.version>2.22.2</maven.surefire_report.plugin.version> <maven.war.plugin.version>3.3.2</maven.war.plugin.version> <!-- Plugin Configuration --> <!-- org.codehaus plugins --> <enforcer.extra.rules.version>1.6.1</enforcer.extra.rules.version> <buildhelper.maven.plugin.version>3.3.0</buildhelper.maven.plugin.version> <buildnumber.maven.plugin.version>3.0.0</buildnumber.maven.plugin.version> <versions.maven.plugin.version>2.15.0</versions.maven.plugin.version> <!-- jandex plugin --> <jandex.maven.plugin.version>1.2.3</jandex.maven.plugin.version> <!-- Maven compiler Plugin --> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <!-- Sonatype --> <nexus.staging.maven.plugin.version>1.6.13</nexus.staging.maven.plugin.version> <sonar.organization>cuioss-github</sonar.organization> <sonar.host.url>https://sonarcloud.io</sonar.host.url> <sonar.maven.plugin.version>3.9.1.2184</sonar.maven.plugin.version> <jacoco.maven.plugin.version>0.8.8</jacoco.maven.plugin.version> <asciidoctor.maven.plugin.version>2.2.2</asciidoctor.maven.plugin.version> <lombok-maven-plugin.version>1.18.20.0</lombok-maven-plugin.version> </properties> <inceptionYear>2022</inceptionYear> <url>https://github.com/cuioss/cui-parent-pom/</url> <scm> <url>https://github.com/cuioss/cui-parent-pom/</url> <connection>scm:git:https://github.com/cuioss/cui-parent-pom.git</connection> <developerConnection>scm:git:https://github.com/cuioss/cui-parent-pom/</developerConnection> <tag>0.1.3</tag> </scm> <issueManagement> <url>https://github.com/cuioss/cui-parent-pom/issues</url> <system>GitHub Issues</system> </issueManagement> <licenses> <license> <name>The Apache Software License, Version 2.0</name> <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> <distribution>repo</distribution> </license> </licenses> <developers> <developer> <name>Oliver Wolff</name> <url>https://github.com/cuioss</url> <roles> <role>owner</role> <role>developer</role> </roles> </developer> <developer> <name>Matthias Walliczek</name> <url>https://github.com/mwalliczek</url> <roles> <role>owner</role> <role>developer</role> </roles> </developer> <developer> <name>Eugen Fischer</name> <url>https://github.com/EugenFischer</url> <roles> <role>owner</role> <role>developer</role> </roles> </developer> <developer> <name>Sven Haag</name> <url>https://github.com/svenhaag</url> <roles> <role>owner</role> <role>developer</role> </roles> </developer> </developers> <organization> <url>https://github.com/cuioss</url> <name>CUI-OpenSource-Software</name> </organization> <repositories> <repository> <id>sonatype-nexus-snapshots</id> <name>Sonatype Nexus Snapshots</name> <url>${staging.repo.url}</url> <releases> <enabled>false</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> <repository> <id>sonatype-nexus-public</id> <name>Sonatype Nexus Public Repo</name> <url>${public.repo.url}</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <distributionManagement> <snapshotRepository> <id>sonatype-nexus-snapshots</id> <name>Sonatype Nexus Snapshots</name> <url>${deploy.snapshot.repo.url}</url> </snapshotRepository> <repository> <id>sonatype-nexus-staging</id> <name>Sonatype Nexus Public Repo</name> <url>${deploy.staging.repo.url}</url> </repository> <site> <id>cuioss-home</id> <url>https://cuioss.github.io/</url> </site> </distributionManagement> <build> <pluginManagement> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>${maven.assembly.plugin.version}</version> </plugin> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>${maven.clean.plugin.version}</version> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>${maven.compiler.plugin.version}</version> <configuration> <source>${maven.compiler.source}</source> <target>${maven.compiler.target}</target> </configuration> </plugin> <plugin> <artifactId>maven-dependency-plugin</artifactId> <version>${maven.dependency.plugin.version}</version> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <version>${maven.deploy.plugin.version}</version> </plugin> <plugin> <artifactId>maven-enforcer-plugin</artifactId> <version>${maven.enforcer.plugin.version}</version> <executions> <execution> <id>mojo-enforcer-rules</id> <phase>validate</phase> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requirePluginVersions> <message>Best Practice is to always define plugin versions!</message> <banLatest>true</banLatest> <banRelease>true</banRelease> </requirePluginVersions> <requireMavenVersion> <version>[3.8.0,)</version> <message>Maven 3.8.0 is the minimal requirement.</message> </requireMavenVersion> <requireJavaVersion> <version>[11,)</version> <message>Invalid Java Version. Make sure you have the latest patch of Java11. Current version: ${java.version}</message> </requireJavaVersion> <requirePropertyDiverges> <message>Children must have a diverging name</message> <property>project.name</property> </requirePropertyDiverges> <requirePropertyDiverges> <message>Children must have a diverging description</message> <property>project.description</property> </requirePropertyDiverges> <requireSameVersions> <plugins> <plugin>org.apache.maven.plugins</plugin> </plugins> </requireSameVersions> </rules> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>org.codehaus.mojo</groupId> <artifactId>extra-enforcer-rules</artifactId> <version>${enforcer.extra.rules.version}</version> </dependency> </dependencies> </plugin> <plugin> <artifactId>maven-failsafe-plugin</artifactId> <version>${maven.failsafe.plugin.version}</version> </plugin> <plugin> <artifactId>maven-gpg-plugin</artifactId> <version>${maven.gpg.plugin.version}</version> <configuration> <gpgArguments> <arg>--pinentry-mode</arg> <arg>loopback</arg> </gpgArguments> </configuration> <executions> <execution> <id>sign-artifacts</id> <phase>verify</phase> <goals> <goal>sign</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-install-plugin</artifactId> <version>${maven.install.plugin.version}</version> </plugin> <plugin> <artifactId>maven-jar-plugin</artifactId> <version>${maven.jar.plugin.version}</version> <configuration> <excludes> <exclude>**/log4j2.xml</exclude> <!-- Exclude eclipse workspace files --> <exclude>**/*.jsfdia</exclude> </excludes> <archive> <index>true</index> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> </manifest> <manifestEntries> <Build-Time>${maven.build.timestamp}</Build-Time> <Build-User>${user.name}</Build-User> <Build-Maven>Maven ${maven.version}</Build-Maven> <Build-Java>${java.version}</Build-Java> <Build-OS>${os.name}</Build-OS> <Build-Number>${buildNumber}</Build-Number> </manifestEntries> </archive> </configuration> </plugin> <plugin> <artifactId>maven-javadoc-plugin</artifactId> <version>${maven.javadoc.plugin.version}</version> <configuration> <source>${maven.compiler.source}</source> <linksource>true</linksource> <quiet>true</quiet> <notimestamp>true</notimestamp> <splitindex>true</splitindex> <doctitle>CUIOSS-Documentation</doctitle> <links> <link>https://javaee.github.io/javaee-spec/javadocs/</link> </links> </configuration> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-release-plugin</artifactId> <version>${maven.release.plugin.version}</version> <configuration> <autoVersionSubmodules>true</autoVersionSubmodules> <tagNameFormat>@{project.version}</tagNameFormat> <pushChanges>false</pushChanges> <localCheckout>true</localCheckout> <remoteTagging>false</remoteTagging> <arguments>-DskipTests=true</arguments> </configuration> </plugin> <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> <version>${nexus.staging.maven.plugin.version}</version> <extensions>true</extensions> <configuration> <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl> <serverId>sonatype-nexus-snapshots</serverId> <autoReleaseAfterClose>true</autoReleaseAfterClose> <stagingProgressTimeoutMinutes>60</stagingProgressTimeoutMinutes> </configuration> </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>${maven.resources.plugin.version}</version> </plugin> <plugin> <artifactId>maven-site-plugin</artifactId> <version>${maven.site.plugin.version}</version> <executions> <execution> <!-- Workaround for disabling deplyoment. This will be done by a github-action--> <id>default-deploy</id> <phase>never</phase> </execution> </executions> <configuration> <generateReports>true</generateReports> <generateSitemap>true</generateSitemap> <relativizeDecorationLinks>false</relativizeDecorationLinks> <locales>en</locales> <inputEncoding>UTF-8</inputEncoding> <outputEncoding>UTF-8</outputEncoding> </configuration> <dependencies> <dependency> <groupId>org.asciidoctor</groupId> <artifactId>asciidoctor-maven-plugin</artifactId> <version>${asciidoctor.maven.plugin.version}</version> </dependency> </dependencies> </plugin> <plugin> <artifactId>maven-project-info-reports-plugin</artifactId> <version>${maven.project.info.reports.plugin.version}</version> </plugin> <plugin> <artifactId>maven-source-plugin</artifactId> <version>${maven.source.plugin.version}</version> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>${maven.surefire.plugin.version}</version> <configuration> <argLine>-Xms64m -Xmx1024m</argLine> <redirectTestOutputToFile>true</redirectTestOutputToFile> <printSummary>true</printSummary> <trimStackTrace>false</trimStackTrace> </configuration> </plugin> <plugin> <artifactId>maven-surefire-report-plugin</artifactId> <version>${maven.surefire_report.plugin.version}</version> </plugin> <plugin> <artifactId>maven-war-plugin</artifactId> <version>${maven.war.plugin.version}</version> <configuration> <!-- since version 3.0 the default behavior changes to "false" --> <failOnMissingWebXml>false</failOnMissingWebXml> <!-- Exclude eclipse workspace files --> <packagingExcludes>**/log4j2.xml,**/*.jsfdia</packagingExcludes> <archive> <index>true</index> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> </manifest> <manifestEntries> <Build-Time>${maven.build.timestamp}</Build-Time> <Build-User>${user.name}</Build-User> <Build-Maven>Maven ${maven.version}</Build-Maven> <Build-Java>${java.version}</Build-Java> <Build-OS>${os.name}</Build-OS> <Build-Number>${buildNumber}</Build-Number> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>${buildhelper.maven.plugin.version}</version> <!-- track and expose the maven version being used --> <executions> <execution> <phase>validate</phase> <goals> <goal>maven-version</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>buildnumber-maven-plugin</artifactId> <version>${buildnumber.maven.plugin.version}</version> <executions> <execution> <phase>validate</phase> <id>create_buildNumber</id> <goals> <goal>create</goal> </goals> <configuration> <doCheck>false</doCheck> <doUpdate>false</doUpdate> <revisionOnScmFailure>UNKNOWN</revisionOnScmFailure> </configuration> </execution> </executions> <configuration> <getRevisionOnlyOnce>true</getRevisionOnlyOnce> <shortRevisionLength>7</shortRevisionLength> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>versions-maven-plugin</artifactId> <version>${versions.maven.plugin.version}</version> </plugin> <plugin> <groupId>org.jboss.jandex</groupId> <artifactId>jandex-maven-plugin</artifactId> <version>${jandex.maven.plugin.version}</version> <executions> <execution> <id>make-index</id> <goals> <goal>jandex</goal> </goals> <!-- phase is 'process-classes by default' --> </execution> </executions> </plugin> <plugin> <groupId>org.sonarsource.scanner.maven</groupId> <artifactId>sonar-maven-plugin</artifactId> <version>${sonar.maven.plugin.version}</version> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>${jacoco.maven.plugin.version}</version> <executions> <execution> <id>prepare-agent</id> <goals> <goal>prepare-agent</goal> </goals> </execution> <execution> <id>report</id> <goals> <goal>report</goal> </goals> <configuration> <formats> <format>XML</format> </formats> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.projectlombok</groupId> <artifactId>lombok-maven-plugin</artifactId> <version>${lombok-maven-plugin.version}</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <artifactId>maven-enforcer-plugin</artifactId> </plugin> </plugins> </build> <profiles> <profile> <id>release-pom</id> <build> <plugins> <plugin> <artifactId>maven-gpg-plugin</artifactId> </plugin> <plugin> <artifactId>maven-release-plugin</artifactId> </plugin> <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> </plugin> <plugin> <artifactId>maven-site-plugin</artifactId> </plugin> </plugins> </build> </profile> <profile> <id>only-eclipse</id> <activation> <property> <name>m2e.version</name> </property> </activation> <build> <pluginManagement> <plugins> <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. --> <plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId> <version>1.0.0</version> <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution> <pluginExecutionFilter> <groupId>com.mycila</groupId> <artifactId>license-maven-plugin</artifactId> <versionRange>[3.0,)</versionRange> <goals> <goal>format</goal> </goals> </pluginExecutionFilter> <action> <ignore /> </action> </pluginExecution> <pluginExecution> <pluginExecutionFilter> <groupId>org.jboss.jandex</groupId> <artifactId>jandex-maven-plugin</artifactId> <versionRange>[1.2.3,)</versionRange> <goals> <goal>jandex</goal> </goals> </pluginExecutionFilter> <action> <execute> <runOnConfiguration>true</runOnConfiguration> </execute> </action> </pluginExecution> <pluginExecution> <pluginExecutionFilter> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <versionRange>[3.3.2,)</versionRange> <goals> <goal>exploded</goal> </goals> </pluginExecutionFilter> <action> <ignore /> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata> </configuration> </plugin> </plugins> </pluginManagement> </build> </profile> </profiles> <modules> <module>cui-java-bom</module> </modules> </project>