microsphere-build
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>io.github.microsphere-projects</groupId>
<artifactId>microsphere-build</artifactId>
<version>0.2.5</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>io.github.microsphere-projects</groupId>
<artifactId>microsphere-build</artifactId>
<version>0.2.5</version>
<packaging>pom</packaging>
<name>Microsphere :: Build</name>
<description>Microsphere Build Project</description>
<url>https://github.com/microsphere-projects/microsphere-build</url>
<licenses>
<license>
<name>The Apache License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
</licenses>
<developers>
<developer>
<id>mercyblitz</id>
<name>Mercy Ma</name>
<email>mercyblitz@gmail.com</email>
<organization>Microsphere</organization>
<roles>
<role>lead</role>
<role>architect</role>
<role>developer</role>
</roles>
</developer>
</developers>
<modules>
<module>microsphere-build-example</module>
</modules>
<scm>
<connection>scm:git:${project.scm.url}</connection>
<developerConnection>scm:git:${project.scm.url}</developerConnection>
<url>git@github.com:microsphere-projects/microsphere-build.git</url>
</scm>
<properties>
<central-publishing-maven-plugin.version>0.10.0</central-publishing-maven-plugin.version>
<maven-checkstyle-plugin.version>3.6.0</maven-checkstyle-plugin.version>
<docs.resources.dir>${project.build.directory}/build-docs</docs.resources.dir>
<ossrh-snapshots-repository.uri>https://${maven-center-repository.host}/repository/maven-snapshots/</ossrh-snapshots-repository.uri>
<maven-gpg-plugin.version>3.2.8</maven-gpg-plugin.version>
<flatten-maven-plugin.version>1.7.3</flatten-maven-plugin.version>
<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
<main.basedir>${basedir}</main.basedir>
<maven-center-repository.host>central.sonatype.com</maven-center-repository.host>
<maven-javadoc-plugin.version>3.12.0</maven-javadoc-plugin.version>
<maven-checkstyle-plugin.failOnViolation>true</maven-checkstyle-plugin.failOnViolation>
<flatten.pomElements.dependencyManagement>interpolate</flatten.pomElements.dependencyManagement>
<maven-jar-plugin.version>3.5.0</maven-jar-plugin.version>
<nexus-staging-maven-plugin.version>1.7.0</nexus-staging-maven-plugin.version>
<jvm.argLine></jvm.argLine>
<flatten.pomElements.dependencies>resolve</flatten.pomElements.dependencies>
<sonar.jacoco.reportPath>${project.basedir}/../target/jacoco.exec</sonar.jacoco.reportPath>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven-compiler-plugin.version>3.15.0</maven-compiler-plugin.version>
<flatten.mode>resolveCiFriendliesOnly</flatten.mode>
<maven-checkstyle-plugin.includeTestSourceDirectory>true</maven-checkstyle-plugin.includeTestSourceDirectory>
<resource.delimiter>@</resource.delimiter>
<flatten.pomElements.distributionManagement>remove</flatten.pomElements.distributionManagement>
<ossrh-staging-api.base-uri>https://ossrh-staging-api.${maven-center-repository.host}</ossrh-staging-api.base-uri>
<revision>0.2.5-SNAPSHOT</revision>
<maven-share-plugin.version>3.6.2</maven-share-plugin.version>
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<maven-checkstyle-plugin.failsOnError>true</maven-checkstyle-plugin.failsOnError>
<maven-enforcer-plugin.version>3.6.2</maven-enforcer-plugin.version>
<maven-surefire-plugin.version>3.5.5</maven-surefire-plugin.version>
<maven-war-plugin.version>3.5.1</maven-war-plugin.version>
<sign-maven-plugin.version>1.1.0</sign-maven-plugin.version>
<flatten.pomElements.parent>expand</flatten.pomElements.parent>
<maven-source-plugin.version>3.4.0</maven-source-plugin.version>
<maven-release-plugin.version>3.3.1</maven-release-plugin.version>
<docs.classes.dir>${project.build.directory}/build-docs-classes</docs.classes.dir>
<ossrh-repository.uri>${ossrh-staging-api.base-uri}/service/local/staging/deploy/maven2/</ossrh-repository.uri>
<docs.main>${project.artifactId}</docs.main>
<asciidoctor-maven-plugin.version>3.2.0</asciidoctor-maven-plugin.version>
<flatten.pomElements.properties>keep</flatten.pomElements.properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven-lombok-plugin.version>1.18.20.0</maven-lombok-plugin.version>
<jacoco-maven-plugin.version>0.8.14</jacoco-maven-plugin.version>
<maven-deploy-plugin.version>3.1.4</maven-deploy-plugin.version>
<sonar.language>java</sonar.language>
<maven-failsafe-plugin.version>3.5.5</maven-failsafe-plugin.version>
<java.version>8</java.version>
<build-helper-maven-plugin.version>3.6.1</build-helper-maven-plugin.version>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<disable.checks>true</disable.checks>
<git-commit-id-plugin.version>4.9.10</git-commit-id-plugin.version>
<maven.compiler.target>${java.version}</maven.compiler.target>
<flatten.pomElements.repositories>remove</flatten.pomElements.repositories>
<puppycrawl-tools-checkstyle.version>13.3.0</puppycrawl-tools-checkstyle.version>
<updatePomFile>true</updatePomFile>
<docbkx-maven-plugin.version>2.0.17</docbkx-maven-plugin.version>
<flatten.dependency.mode>all</flatten.dependency.mode>
<jacoco.argLine></jacoco.argLine>
</properties>
<build>
<resources>
<resource>
<filtering>true</filtering>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<compilerArgs>
<compilerArg>-parameters</compilerArg>
</compilerArgs>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<encoding>${file.encoding}</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>${maven-source-plugin.version}</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<source>${maven.compiler.source}</source>
<detectJavaApiLink>false</detectJavaApiLink>
<encoding>${file.encoding}</encoding>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven-jar-plugin.version}</version>
<configuration>
<archive>
<addMavenDescriptor>true</addMavenDescriptor>
<index>true</index>
<manifest>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Specification-Version>${project.version}</Specification-Version>
<Implementation-Version>${project.version}</Implementation-Version>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>${maven-war-plugin.version}</version>
</plugin>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
<version>${maven-share-plugin.version}</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>${maven-deploy-plugin.version}</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>${maven-release-plugin.version}</version>
<configuration>
<scmCommentPrefix>[CI Skip]</scmCommentPrefix>
<autoVersionSubmodules>true</autoVersionSubmodules>
<useReleaseProfile>false</useReleaseProfile>
<releaseProfiles>release</releaseProfiles>
<goals>deploy</goals>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>${central-publishing-maven-plugin.version}</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>ossrh</publishingServerId>
<autoPublish>true</autoPublish>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<includes>
<include>**/*Tests.java</include>
<include>**/*Test.java</include>
</includes>
<excludes>
<exclude>**/Abstract*.java</exclude>
</excludes>
<argLine>@{jacoco.argLine} ${jvm.argLine}</argLine>
</configuration>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${maven-failsafe-plugin.version}</version>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${maven-checkstyle-plugin.version}</version>
<executions>
<execution>
<id>checkstyle-validation</id>
<phase>validate</phase>
<goals>
<goal>check</goal>
</goals>
<inherited>true</inherited>
<configuration>
<skip>${disable.checks}</skip>
<configLocation>checkstyle/checkstyle.xml</configLocation>
<suppressionsLocation>checkstyle/checkstyle-suppressions.xml</suppressionsLocation>
<inputEncoding>UTF-8</inputEncoding>
<consoleOutput>true</consoleOutput>
<propertyExpansion>checkstyle.build.directory=${project.build.directory}</propertyExpansion>
<includeTestSourceDirectory>${maven-checkstyle-plugin.includeTestSourceDirectory}</includeTestSourceDirectory>
<failsOnError>${maven-checkstyle-plugin.failsOnError}</failsOnError>
<failOnViolation>${maven-checkstyle-plugin.failOnViolation}</failOnViolation>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<version>${puppycrawl-tools-checkstyle.version}</version>
</dependency>
</dependencies>
</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>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
<configuration>
<propertyName>jacoco.argLine</propertyName>
</configuration>
</plugin>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<version>${maven-enforcer-plugin.version}</version>
<executions>
<execution>
<id>enforce-banned-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<searchTransitive>true</searchTransitive>
</bannedDependencies>
</rules>
<fail>true</fail>
</configuration>
</execution>
<execution>
<id>enforce-versions</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<banDuplicatePomDependencyVersions />
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
<version>${flatten-maven-plugin.version}</version>
<executions>
<execution>
<id>flatten</id>
<phase>process-resources</phase>
<goals>
<goal>flatten</goal>
</goals>
</execution>
</executions>
<inherited>true</inherited>
<configuration>
<embedBuildProfileDependencies>false</embedBuildProfileDependencies>
<flattenDependencyMode>${flatten.dependency.mode}</flattenDependencyMode>
<flattenMode>${flatten.mode}</flattenMode>
<updatePomFile>${updatePomFile}</updatePomFile>
<pomElements>
<parent>${flatten.pomElements.parent}</parent>
<properties>${flatten.pomElements.properties}</properties>
<dependencyManagement>${flatten.pomElements.dependencyManagement}</dependencyManagement>
<dependencies>${flatten.pomElements.dependencies}</dependencies>
<distributionManagement>${flatten.pomElements.distributionManagement}</distributionManagement>
<repositories>${flatten.pomElements.repositories}</repositories>
</pomElements>
</configuration>
</plugin>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<version>${git-commit-id-plugin.version}</version>
<executions>
<execution>
<id>get-the-git-infos</id>
<phase>initialize</phase>
<goals>
<goal>revision</goal>
</goals>
</execution>
</executions>
<configuration>
<generateGitPropertiesFile>true</generateGitPropertiesFile>
<generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
<includeOnlyProperties>
<includeOnlyProperty>git.tags</includeOnlyProperty>
<includeOnlyProperty>git.branch</includeOnlyProperty>
<includeOnlyProperty>git.build.time</includeOnlyProperty>
<includeOnlyProperty>git.build.user.email</includeOnlyProperty>
<includeOnlyProperty>git.build.version</includeOnlyProperty>
<includeOnlyProperty>git.commit.time</includeOnlyProperty>
<includeOnlyProperty>git.commit.id.full</includeOnlyProperty>
<includeOnlyProperty>git.commit.user.email</includeOnlyProperty>
<includeOnlyProperty>git.remote.origin.url</includeOnlyProperty>
</includeOnlyProperties>
<commitIdGenerationMode>full</commitIdGenerationMode>
</configuration>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<version>${asciidoctor-maven-plugin.version}</version>
</plugin>
<plugin>
<groupId>com.agilejava.docbkx</groupId>
<artifactId>docbkx-maven-plugin</artifactId>
<version>${docbkx-maven-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${build-helper-maven-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.projectlombok</groupId>
<artifactId>lombok-maven-plugin</artifactId>
<version>${maven-lombok-plugin.version}</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>delombok</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven-gpg-plugin.version}</version>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.simplify4u.plugins</groupId>
<artifactId>sign-maven-plugin</artifactId>
<version>${sign-maven-plugin.version}</version>
<executions>
<execution>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>${nexus-staging-maven-plugin.version}</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>${ossrh-staging-api.base-uri}</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
</plugin>
</plugins>
</reporting>
<profiles>
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-gpg-plugin</artifactId>
</plugin>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>publish</id>
<build>
<plugins>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-gpg-plugin</artifactId>
</plugin>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>ci</id>
<build>
<plugins>
<plugin>
<groupId>org.simplify4u.plugins</groupId>
<artifactId>sign-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>test</id>
<build>
<plugins>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>coverage</id>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>docs</id>
<build>
<plugins>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<executions>
<execution>
<id>asciidoc-to-html</id>
<phase>generate-resources</phase>
<goals>
<goal>process-asciidoc</goal>
</goals>
<configuration>
<backend>html5</backend>
</configuration>
</execution>
</executions>
<inherited>false</inherited>
</plugin>
<plugin>
<groupId>com.agilejava.docbkx</groupId>
<artifactId>docbkx-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<inherited>false</inherited>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>java8+</id>
<activation>
<jdk>[1.8,)</jdk>
</activation>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<inherited>true</inherited>
<configuration>
<doclint>none</doclint>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<properties>
<asciidoctor-maven-plugin.version>2.2.6</asciidoctor-maven-plugin.version>
<puppycrawl-tools-checkstyle.version>9.3</puppycrawl-tools-checkstyle.version>
</properties>
</profile>
<profile>
<id>java9+</id>
<activation>
<jdk>[9,)</jdk>
</activation>
<properties>
<maven.compiler.release>${java.version}</maven.compiler.release>
</properties>
</profile>
<profile>
<id>java11+</id>
<activation>
<jdk>[11,)</jdk>
</activation>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<source>${maven.compiler.source}</source>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<properties>
<asciidoctor-maven-plugin.version>3.2.0</asciidoctor-maven-plugin.version>
<puppycrawl-tools-checkstyle.version>10.26.1</puppycrawl-tools-checkstyle.version>
</properties>
</profile>
<profile>
<id>java9-15</id>
<activation>
<jdk>[9,15]</jdk>
</activation>
<properties>
<jvm.argLine>--illegal-access=permit</jvm.argLine>
</properties>
</profile>
<profile>
<id>java16+</id>
<activation>
<jdk>[16,)</jdk>
</activation>
<properties>
<jvm.argLine>--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED</jvm.argLine>
</properties>
</profile>
<profile>
<id>java17+</id>
<activation>
<jdk>[17,)</jdk>
</activation>
<properties>
<puppycrawl-tools-checkstyle.version>11.1.0</puppycrawl-tools-checkstyle.version>
</properties>
</profile>
</profiles>
</project>