| <?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> | |
| <groupId>org.apache.camel</groupId> | |
| <artifactId>camel-kit-parent</artifactId> | |
| <version>1.0.0-SNAPSHOT</version> | |
| <packaging>pom</packaging> | |
| <name>Camel Kit :: Parent</name> | |
| <description>Shared build conventions and reactor for Camel Kit and Knowledge</description> | |
| <url>https://github.com/apache/camel-kit</url> | |
| <licenses> | |
| <license> | |
| <name>Apache License, Version 2.0</name> | |
| <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url> | |
| <distribution>repo</distribution> | |
| </license> | |
| </licenses> | |
| <properties> | |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |
| <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> | |
| <jdk.version>17</jdk.version> | |
| <maven.compiler.source>${jdk.version}</maven.compiler.source> | |
| <maven.compiler.target>${jdk.version}</maven.compiler.target> | |
| <maven.compiler.release>${jdk.version}</maven.compiler.release> | |
| <minimalJavaBuildVersion>${jdk.version}</minimalJavaBuildVersion> | |
| <impsort-maven-plugin.version>1.13.0</impsort-maven-plugin.version> | |
| <formatter-maven-plugin.version>2.29.0</formatter-maven-plugin.version> | |
| <error-prone.version>2.36.0</error-prone.version> | |
| <forbiddenapis.version>3.10</forbiddenapis.version> | |
| <format.skip>false</format.skip> | |
| <maven.surefire.plugin.version>3.5.4</maven.surefire.plugin.version> | |
| <maven.jar.plugin.version>3.5.0</maven.jar.plugin.version> | |
| </properties> | |
| <developers> | |
| <developer> | |
| <name>Luigi De Masi</name> | |
| <email>luigidemasi@gmail.com</email> | |
| </developer> | |
| </developers> | |
| <scm child.scm.connection.inherit.append.path="false" | |
| child.scm.developerConnection.inherit.append.path="false" | |
| child.scm.url.inherit.append.path="false"> | |
| <connection>scm:git:https://github.com/apache/camel-kit.git</connection> | |
| <developerConnection>scm:git:https://github.com/apache/camel-kit.git</developerConnection> | |
| <url>https://github.com/apache/camel-kit</url> | |
| <tag>HEAD</tag> | |
| </scm> | |
| <issueManagement> | |
| <system>GitHub Issues</system> | |
| <url>https://github.com/apache/camel-kit/issues</url> | |
| </issueManagement> | |
| <distributionManagement> | |
| <snapshotRepository> | |
| <id>central</id> | |
| <url>https://central.sonatype.com/repository/maven-snapshots/</url> | |
| </snapshotRepository> | |
| </distributionManagement> | |
| <repositories> | |
| <repository> | |
| <id>central</id> | |
| <url>https://repo1.maven.org/maven2/</url> | |
| <name>Maven Central</name> | |
| <snapshots> | |
| <enabled>false</enabled> | |
| </snapshots> | |
| <releases> | |
| <enabled>true</enabled> | |
| </releases> | |
| </repository> | |
| <repository> | |
| <id>apache-snapshots</id> | |
| <name>Apache Snapshot Repository</name> | |
| <url>https://repository.apache.org/snapshots</url> | |
| <releases> | |
| <enabled>false</enabled> | |
| </releases> | |
| <snapshots> | |
| <enabled>true</enabled> | |
| <updatePolicy>always</updatePolicy> | |
| </snapshots> | |
| </repository> | |
| </repositories> | |
| <pluginRepositories> | |
| <pluginRepository> | |
| <id>apache-snapshots</id> | |
| <name>Apache Snapshot Repository</name> | |
| <url>https://repository.apache.org/snapshots</url> | |
| <releases> | |
| <enabled>false</enabled> | |
| </releases> | |
| <snapshots> | |
| <enabled>true</enabled> | |
| <updatePolicy>always</updatePolicy> | |
| </snapshots> | |
| </pluginRepository> | |
| </pluginRepositories> | |
| <modules> | |
| <module>kit</module> | |
| <module>knowledge</module> | |
| </modules> | |
| <build> | |
| <pluginManagement> | |
| <plugins> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-compiler-plugin</artifactId> | |
| <version>3.13.0</version> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-source-plugin</artifactId> | |
| <version>3.3.1</version> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-javadoc-plugin</artifactId> | |
| <version>3.11.2</version> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-gpg-plugin</artifactId> | |
| <version>3.2.7</version> | |
| </plugin> | |
| <plugin> | |
| <groupId>de.thetaphi</groupId> | |
| <artifactId>forbiddenapis</artifactId> | |
| <version>${forbiddenapis.version}</version> | |
| </plugin> | |
| <plugin> | |
| <groupId>net.revelc.code</groupId> | |
| <artifactId>impsort-maven-plugin</artifactId> | |
| <version>${impsort-maven-plugin.version}</version> | |
| <configuration> | |
| <groups>java.,jakarta.,javax.,org.w3c.,org.xml.,org.apache.camel.,io.github.luigidemasi.,*</groups> | |
| <staticAfter>true</staticAfter> | |
| <removeUnused>true</removeUnused> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <groupId>net.revelc.code.formatter</groupId> | |
| <artifactId>formatter-maven-plugin</artifactId> | |
| <version>${formatter-maven-plugin.version}</version> | |
| <configuration> | |
| <configFile>${maven.multiModuleProjectDirectory}/camel-kit-formatter-config.xml</configFile> | |
| <skip>${format.skip}</skip> | |
| <lineEnding>KEEP</lineEnding> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-surefire-plugin</artifactId> | |
| <version>${maven.surefire.plugin.version}</version> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-jar-plugin</artifactId> | |
| <version>${maven.jar.plugin.version}</version> | |
| </plugin> | |
| </plugins> | |
| </pluginManagement> | |
| </build> | |
| <profiles> | |
| <!-- Default profile: auto-format code and sort imports --> | |
| <profile> | |
| <id>format</id> | |
| <activation> | |
| <activeByDefault>true</activeByDefault> | |
| </activation> | |
| <build> | |
| <plugins> | |
| <plugin> | |
| <groupId>net.revelc.code</groupId> | |
| <artifactId>impsort-maven-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>sort-imports</id> | |
| <goals> | |
| <goal>sort</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| <plugin> | |
| <groupId>net.revelc.code.formatter</groupId> | |
| <artifactId>formatter-maven-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>format</id> | |
| <goals> | |
| <goal>format</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </profile> | |
| <!-- CI profile: check formatting and imports without modifying code --> | |
| <profile> | |
| <id>sourcecheck</id> | |
| <build> | |
| <plugins> | |
| <plugin> | |
| <groupId>net.revelc.code</groupId> | |
| <artifactId>impsort-maven-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>sort-imports</id> | |
| <phase>none</phase> | |
| </execution> | |
| <execution> | |
| <id>check-imports</id> | |
| <phase>validate</phase> | |
| <goals> | |
| <goal>check</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| <plugin> | |
| <groupId>net.revelc.code.formatter</groupId> | |
| <artifactId>formatter-maven-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>format</id> | |
| <phase>none</phase> | |
| </execution> | |
| <execution> | |
| <id>validate-format</id> | |
| <phase>validate</phase> | |
| <goals> | |
| <goal>validate</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </profile> | |
| <!-- Error Prone: compile-time bug detection --> | |
| <profile> | |
| <id>errorprone</id> | |
| <build> | |
| <plugins> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-compiler-plugin</artifactId> | |
| <configuration> | |
| <compilerArgs> | |
| <arg>-XDcompilePolicy=simple</arg> | |
| <arg>-Xplugin:ErrorProne</arg> | |
| </compilerArgs> | |
| <annotationProcessorPaths> | |
| <path> | |
| <groupId>com.google.errorprone</groupId> | |
| <artifactId>error_prone_core</artifactId> | |
| <version>${error-prone.version}</version> | |
| </path> | |
| </annotationProcessorPaths> | |
| </configuration> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </profile> | |
| <profile> | |
| <id>release</id> | |
| <build> | |
| <plugins> | |
| <!-- Attach source JARs --> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-source-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>attach-sources</id> | |
| <goals> | |
| <goal>jar-no-fork</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| <!-- Attach Javadoc JARs --> | |
| <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> | |
| <configuration> | |
| <doclint>none</doclint> | |
| <quiet>true</quiet> | |
| <failOnError>false</failOnError> | |
| <failOnWarnings>false</failOnWarnings> | |
| </configuration> | |
| </plugin> | |
| <!-- Sign artifacts with GPG --> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-gpg-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>sign-artifacts</id> | |
| <phase>verify</phase> | |
| <goals> | |
| <goal>sign</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| <!-- Central Publishing Maven Plugin --> | |
| <plugin> | |
| <groupId>org.sonatype.central</groupId> | |
| <artifactId>central-publishing-maven-plugin</artifactId> | |
| <version>0.9.0</version> | |
| <extensions>true</extensions> | |
| <configuration> | |
| <publishingServerId>central</publishingServerId> | |
| <autoPublish>false</autoPublish> | |
| <waitUntil>validated</waitUntil> | |
| <excludeArtifacts> | |
| <excludeArtifact>camel-kit-knowledge-index</excludeArtifact> | |
| </excludeArtifacts> | |
| </configuration> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </profile> | |
| </profiles> | |
| </project> |