restxop-parent
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>dev.restxop</groupId>
<artifactId>restxop-parent</artifactId>
<version>0.1.0</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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>dev.restxop</groupId>
<artifactId>restxop-parent</artifactId>
<version>0.1.0</version>
<packaging>pom</packaging>
<name>restxop</name>
<description>Streamed binary attachments for Spring REST: MTOM/XOP semantics over multipart/related with a JSON root part</description>
<url>https://restxop.dev</url>
<licenses>
<license>
<name>Apache-2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<connection>scm:git:https://github.com/restxop/restxop.git</connection>
<developerConnection>scm:git:git@github.com:restxop/restxop.git</developerConnection>
<url>https://github.com/restxop/restxop</url>
</scm>
<developers>
<developer>
<id>jshipman42</id>
<name>John Shipman</name>
<email>john@shipman.ws</email>
</developer>
</developers>
<modules>
<module>restxop-core</module>
<module>restxop-jackson2</module>
<module>restxop-jackson3</module>
<module>restxop-spring-boot-3-starter</module>
<module>restxop-spring-boot-4-starter</module>
<module>restxop-testkit</module>
<module>restxop-samples</module>
</modules>
<properties>
<maven.compiler.release>17</maven.compiler.release>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<slf4j.version>2.0.18</slf4j.version>
<junit.version>5.14.4</junit.version>
<!-- JUnit 5 tag groups: failure, fidelity, legacy run in every build;
stress, load, perf are opt-in via -Dgroups=... (see tagged-run profile) -->
<excludedGroups>stress,load,perf</excludedGroups>
<!-- JaCoCo minimum instruction coverage; overridable per module, never zero
for library modules (constitution VI) -->
<restxop.coverage.min>0.60</restxop.coverage.min>
<surefire.version>3.5.6</surefire.version>
<jacoco.version>0.8.15</jacoco.version>
<spotbugs.version>4.10.2.0</spotbugs.version>
<license-plugin.version>4.6</license-plugin.version>
<sonar-plugin.version>5.7.0.6970</sonar-plugin.version>
<sonar.organization>restxop</sonar.organization>
<sonar.projectKey>restxop_restxop</sonar.projectKey>
<sonar.host.url>https://sonarcloud.io</sonar.host.url>
<sonar.coverage.jacoco.xmlReportPaths>${project.build.directory}/site/jacoco/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>dev.restxop</groupId>
<artifactId>restxop-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>dev.restxop</groupId>
<artifactId>restxop-jackson2</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>dev.restxop</groupId>
<artifactId>restxop-jackson3</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>dev.restxop</groupId>
<artifactId>restxop-testkit</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>dev.restxop</groupId>
<artifactId>restxop-spring-boot-3-starter</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>dev.restxop</groupId>
<artifactId>restxop-spring-boot-4-starter</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
<version>${junit.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.15.0</version>
<configuration>
<!-- Spring MVC parameter-name discovery (@RequestParam et al.) -->
<parameters>true</parameters>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${surefire.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.5.0</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco.version}</version>
<executions>
<execution>
<id>prepare-agent</id>
<goals><goal>prepare-agent</goal></goals>
</execution>
<execution>
<id>report</id>
<phase>verify</phase>
<goals><goal>report</goal></goals>
</execution>
<execution>
<id>coverage-check</id>
<phase>verify</phase>
<goals><goal>check</goal></goals>
<configuration>
<rules>
<rule>
<element>BUNDLE</element>
<limits>
<limit>
<counter>INSTRUCTION</counter>
<value>COVEREDRATIO</value>
<minimum>${restxop.coverage.min}</minimum>
</limit>
</limits>
</rule>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<version>${spotbugs.version}</version>
<configuration>
<effort>Max</effort>
<threshold>Medium</threshold>
<failOnError>true</failOnError>
<excludeFilterFile>${maven.multiModuleProjectDirectory}/build-config/spotbugs-exclude.xml</excludeFilterFile>
</configuration>
<executions>
<execution>
<id>spotbugs-check</id>
<phase>verify</phase>
<goals><goal>check</goal></goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.12.0</version>
<configuration>
<!-- Public API only: internal packages carry no doc guarantee -->
<excludePackageNames>dev.restxop.core.internal:dev.restxop.core.internal.*</excludePackageNames>
<doclint>all,-missing</doclint>
<failOnWarnings>true</failOnWarnings>
<quiet>true</quiet>
</configuration>
<executions>
<execution>
<id>javadoc-check</id>
<phase>verify</phase>
<goals><goal>javadoc</goal></goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.mycila</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>${license-plugin.version}</version>
<configuration>
<licenseSets>
<licenseSet>
<header>${maven.multiModuleProjectDirectory}/build-config/license-header.txt</header>
<includes>
<include>src/**/*.java</include>
</includes>
</licenseSet>
</licenseSets>
<mapping>
<java>SLASHSTAR_STYLE</java>
</mapping>
</configuration>
<executions>
<execution>
<id>license-check</id>
<phase>verify</phase>
<goals><goal>check</goal></goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>${sonar-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>0.11.0</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<!-- Running an explicit tag selection (mvn -Dgroups=perf ...) clears the
default exclusions so quickstart commands work verbatim -->
<profile>
<id>tagged-run</id>
<activation>
<property><name>groups</name></property>
</activation>
<properties>
<excludedGroups/>
</properties>
</profile>
<!-- Release artifacts for Maven Central: sources, javadoc, signatures
(mvn -Prelease deploy; credentials via the 'central' server id) -->
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.4.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>
<executions>
<execution>
<id>attach-javadocs</id>
<goals><goal>jar</goal></goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.8</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals><goal>sign</goal></goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!-- Analysis against a local SonarQube: mvn -Plocal-sonar sonar:sonar -->
<profile>
<id>local-sonar</id>
<properties>
<sonar.host.url>http://localhost:9000</sonar.host.url>
<sonar.projectKey>restxop_restxop</sonar.projectKey>
</properties>
</profile>
</profiles>
</project>