- OrdoJdbcAutoConfiguration: use string-based @AutoConfigureAfter(name = ...) to reference both Spring Boot 3.x and 4.x DataSource/Flyway autoconfiguration classes, since Boot 4 relocated these to dedicated modules. - flatten-maven-plugin: switch flattenMode from resolveCiFriendliesOnly to defaults so inter-module dependency versions are fully resolved (not just the project's own <version>) when installed, fixing dependency resolution for external consumers. - Align sibling-module dependency versions to use \ consistently. - Ignore generated .flattened-pom.xml files.
109 lines
4.3 KiB
XML
109 lines
4.3 KiB
XML
<?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">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<groupId>com.jetlumen</groupId>
|
|
<artifactId>ordo</artifactId>
|
|
<version>${revision}</version>
|
|
|
|
<packaging>pom</packaging>
|
|
|
|
<name>ordo</name>
|
|
<description>Lightweight approval workflow engine</description>
|
|
<modules>
|
|
<module>ordo-core</module>
|
|
<module>ordo-api</module>
|
|
<module>ordo-example</module>
|
|
<module>ordo-storage-jdbc</module>
|
|
<module>ordo-spring-boot-starter</module>
|
|
<module>ordo-spring-boot-autoconfigure</module>
|
|
</modules>
|
|
|
|
<properties>
|
|
<revision>0.0.1-SNAPSHOT</revision>
|
|
<maven.compiler.source>21</maven.compiler.source>
|
|
<maven.compiler.target>21</maven.compiler.target>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<junit.version>5.11.4</junit.version>
|
|
<jackson.version>2.18.2</jackson.version>
|
|
<h2.version>2.3.232</h2.version>
|
|
<postgresql.version>42.7.5</postgresql.version>
|
|
</properties>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter</artifactId>
|
|
<version>${junit.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-databind</artifactId>
|
|
<version>${jackson.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.h2database</groupId>
|
|
<artifactId>h2</artifactId>
|
|
<version>${h2.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.postgresql</groupId>
|
|
<artifactId>postgresql</artifactId>
|
|
<version>${postgresql.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.5.2</version>
|
|
</plugin>
|
|
<plugin>
|
|
<!--
|
|
Resolves ${revision} and inter-module dependency versions before the
|
|
POM is installed/deployed, so consumers outside this reactor (e.g.
|
|
rhizome) get concrete versions instead of unresolved placeholders.
|
|
|
|
flattenMode=resolveCiFriendliesOnly only resolves the revision/sha1/
|
|
changelist properties inside <version>/<parent><version> and leaves
|
|
everything else (including <dependency><version>${revision}</version>)
|
|
untouched - that mode is NOT sufficient here. "defaults" performs full
|
|
dependency resolution (pulling exact versions from dependencyManagement
|
|
and interpolating all properties), producing a self-contained pom for
|
|
each module with no leftover placeholders.
|
|
-->
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>flatten-maven-plugin</artifactId>
|
|
<version>1.6.0</version>
|
|
<configuration>
|
|
<updatePomFile>true</updatePomFile>
|
|
<flattenMode>defaults</flattenMode>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>flatten</id>
|
|
<phase>process-resources</phase>
|
|
<goals>
|
|
<goal>flatten</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>flatten.clean</id>
|
|
<phase>clean</phase>
|
|
<goals>
|
|
<goal>clean</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
</project>
|