archetype-resources.pom.xml Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of spring-webflux-archetype
Show all versions of spring-webflux-archetype
Create a multi-module maven project for a native ready Spring REST API with webflux, RDBC, OpenID security and OpenAPI
The newest version!
<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> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>${spring-boot-version}</version> <relativePath /> </parent> <groupId>${groupId}</groupId> <artifactId>${rootArtifactId}</artifactId> <version>${version}</version> <packaging>pom</packaging> <name>${rootArtifactId}</name> <modules> <module>dtos</module> <module>exceptions</module> <module>${api-artifactId}</module> </modules> <properties> <java.version>17</java.version> <maven.compiler.target>${java.version}</maven.compiler.target> <maven.compiler.source>${java.version}</maven.compiler.source> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <com.c4-soft.springaddons.version>${c4-soft-springaddons-version}</com.c4-soft.springaddons.version> <lombok-mapstruct-binding.version>${lombok-mapstruct-binding-version}</lombok-mapstruct-binding.version> <org.mapstruct.version>${mapstruct-version}</org.mapstruct.version> <spring-native.version>${spring-native-version}</spring-native.version> <springdoc-openapi.version>${springdoc-openapi-version}</springdoc-openapi.version> <springdoc-openapi-maven-plugin.version>${springdoc-openapi-maven-plugin-version}</springdoc-openapi-maven-plugin.version> <springdoc-openapi.output-dir>${project.parent.basedir}/..</springdoc-openapi.output-dir> <integration-tests.hostname>${env.HOSTNAME}</integration-tests.hostname> <integration-tests.scheme>https</integration-tests.scheme> <repackage.classifier /> <image.builder>paketobuildpacks/builder:tiny</image.builder> <ca-certificates.binding>${project.basedir}/bindings/ca-certificates</ca-certificates.binding> <image.native>false</image.native> <image.arguments /> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>${groupId}.${rootArtifactId}</groupId> <artifactId>dtos</artifactId> <version>${version}</version> </dependency> <dependency> <groupId>${groupId}.${rootArtifactId}</groupId> <artifactId>exceptions</artifactId> <version>${version}</version> </dependency> <dependency> <groupId>${groupId}.${rootArtifactId}</groupId> <artifactId>security</artifactId> <version>${version}</version> </dependency> <dependency> <groupId>org.springframework.experimental</groupId> <artifactId>spring-native</artifactId> <version>${spring-native.version}</version> </dependency> <dependency> <groupId>io.swagger.core.v3</groupId> <artifactId>swagger-annotations</artifactId> <version>2.1.12</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-security</artifactId> <version>${springdoc-openapi.version}</version> </dependency> <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-ui</artifactId> <version>${springdoc-openapi.version}</version> </dependency> <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-native</artifactId> <version>${springdoc-openapi.version}</version> </dependency> <dependency> <groupId>com.c4-soft.springaddons</groupId> <artifactId>spring-security-oauth2-addons</artifactId> <version>${com.c4-soft.springaddons.version}</version> </dependency> <dependency> <groupId>com.c4-soft.springaddons</groupId> <artifactId>spring-security-oauth2-test-addons</artifactId> <version>${com.c4-soft.springaddons.version}</version> </dependency> <dependency> <groupId>com.c4-soft.springaddons</groupId> <artifactId>spring-security-oauth2-test-webflux-addons</artifactId> <version>${com.c4-soft.springaddons.version}</version> </dependency> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct</artifactId> <version>${org.mapstruct.version}</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok-mapstruct-binding</artifactId> <version>${lombok-mapstruct-binding.version}</version> </dependency> </dependencies> </dependencyManagement> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> <annotationProcessorPaths> <path> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> </path> <path> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${org.mapstruct.version}</version> </path> </annotationProcessorPaths> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <classifier>${repackage.classifier}</classifier> <keepDependenciesWithProvidedScope>true</keepDependenciesWithProvidedScope> <createDependencyReducedPom>true</createDependencyReducedPom> <image> <builder>${image.builder}</builder> <env> <BP_NATIVE_IMAGE>${image.native}</BP_NATIVE_IMAGE> <BP_NATIVE_IMAGE_BUILD_ARGUMENTS>${image.arguments}</BP_NATIVE_IMAGE_BUILD_ARGUMENTS> </env> <bindings> <binding>${ca-certificates.binding}:/platform/bindings/ca-certificates:ro</binding> </bindings> </image> </configuration> </plugin> <plugin> <groupId>org.springframework.experimental</groupId> <artifactId>spring-aot-maven-plugin</artifactId> <version>${spring-native.version}</version> <configuration> <removeXmlSupport>true</removeXmlSupport> <removeSpelSupport>false</removeSpelSupport> <removeYamlSupport>true</removeYamlSupport> <removeJmxSupport>true</removeJmxSupport> </configuration> <executions> <execution> <id>generate</id> <goals> <goal>generate</goal> </goals> </execution> <execution> <id>test-generate</id> <goals> <goal>test-generate</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.graalvm.buildtools</groupId> <artifactId>native-maven-plugin</artifactId> <version>${native.buildtools.version}</version> <extensions>true</extensions> <executions> <execution> <id>build-native</id> <goals> <goal>build</goal> </goals> <phase>package</phase> </execution> <execution> <id>test-native</id> <goals> <goal>test</goal> </goals> <phase>test</phase> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.2.4</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.0.0-M5</version> </plugin> </plugins> </pluginManagement> </build> <profiles> <profile> <id>build-image</id> <build> <pluginManagement> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <id>build-image</id> <goals> <goal>build-image</goal> </goals> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> </profile> <profile> <id>build-native-image</id> <properties> <image.builder>paketobuildpacks/builder:tiny</image.builder> <image.buildpack>gcr.io/paketo-buildpacks/java-native-image:7.1.0</image.buildpack> <image.native>true</image.native> <image.arguments> -H:+ReportExceptionStackTraces --enable-https -H:+InlineBeforeAnalysis --initialize-at-run-time=io.netty.handler.codec.compression.BrotliDecoder --verbose --allow-incomplete-classpath --trace-class-initialization=org.springframework.util.unit.DataSize</image.arguments> </properties> <build> <pluginManagement> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <id>build-image</id> <goals> <goal>build-image</goal> </goals> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> </profile> <profile> <id>native</id> <properties> <!-- Avoid a clash between Spring Boot repackaging and native-maven-plugin --> <repackage.classifier>exec</repackage.classifier> </properties> <dependencies> <!-- Required with Maven Surefire 2.x --> <dependency> <groupId>org.junit.platform</groupId> <artifactId>junit-platform-launcher</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.graalvm.buildtools</groupId> <artifactId>native-maven-plugin</artifactId> </plugin> </plugins> </build> </profile> <profile> <id>openapi</id> <build> <pluginManagement> <plugins> <plugin> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-maven-plugin</artifactId> <version>${springdoc-openapi-maven-plugin.version}</version> <configuration> <apiDocsUrl>${integration-tests.scheme}://${integration-tests.hostname}:${integration-tests.port}/v3/api-docs </apiDocsUrl> <outputFileName>${project.artifactId}.openapi.json</outputFileName> <outputDir>${springdoc-openapi.output-dir}</outputDir> <skip>false</skip> </configuration> <executions> <execution> <id>integration-test</id> <goals> <goal>generate</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <jvmArguments> -Dspring.application.admin.enabled=true -Dspring.profiles.active=openapi </jvmArguments> </configuration> <executions> <execution> <id>pre-integration-test</id> <goals> <goal>start</goal> </goals> </execution> <execution> <id>post-integration-test</id> <goals> <goal>stop</goal> </goals> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> </profile> </profiles> <pluginRepositories> <pluginRepository> <id>spring-release</id> <name>Spring release</name> <url>https://repo.spring.io/release</url> <snapshots> <enabled>false</enabled> </snapshots> </pluginRepository> <pluginRepository> <id>spring-milestone</id> <name>Spring milestone</name> <url>https://repo.spring.io/milestone</url> <snapshots> <enabled>false</enabled> </snapshots> </pluginRepository> <pluginRepository> <id>spring-snapshot</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/snapshot</url> <releases> <enabled>false</enabled> </releases> </pluginRepository> </pluginRepositories> <repositories> <repository> <id>spring-release</id> <name>Spring release</name> <url>https://repo.spring.io/release</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> <repository> <id>spring-milestone</id> <name>Spring milestone</name> <url>https://repo.spring.io/milestone</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> <repository> <id>spring-snapshot</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/snapshot</url> <releases> <enabled>false</enabled> </releases> </repository> </repositories> </project>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy