wildfly-parent
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-parent</artifactId>
<version>39.0.1.Final</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright The WildFly Authors
~ SPDX-License-Identifier: Apache-2.0
-->
<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>
<parent>
<groupId>org.jboss</groupId>
<artifactId>jboss-parent</artifactId>
<version>51</version>
<!-- The empty relativePath makes Maven lookup it in the repository. Missing tag default is ../pom.xml. -->
<relativePath/>
</parent>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-parent</artifactId>
<!--
Maintain separation between the artifact id and the version to help prevent
merge conflicts between commits changing the GA and those changing the V.
-->
<version>39.0.1.Final</version>
<packaging>pom</packaging>
<name>WildFly: Parent Aggregator</name>
<description>WildFly: Parent Aggregator</description>
<url>https://wildfly.org</url>
<licenses>
<license>
<name>Apache License 2.0</name>
<url>http://repository.jboss.org/licenses/apache-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<connection>scm:git:${jboss.as.scm.connection}</connection>
<developerConnection>scm:git:${jboss.as.scm.connection}</developerConnection>
<url>${jboss.as.scm.url}</url>
</scm>
<developers>
<developer>
<id>wildfly.org</id>
<name>WildFly Community</name>
<organization>wildfly.org</organization>
<organizationUrl>https://wildfly.org</organizationUrl>
</developer>
</developers>
<properties>
<!-- Release Info.
Drives properties that end up in MANIFEST.mf files produced by this build
and some are also used in the pom 'scm' element.
Do not use these properties for other purpose.
-->
<jboss.as.release.codename>N/A</jboss.as.release.codename>
<jboss.as.scm.connection>git@github.com:wildfly/wildfly.git</jboss.as.scm.connection>
<jboss.as.scm.url>https://github.com/wildfly/wildfly</jboss.as.scm.url>
<!-- Other release identification information that drives how the built server identifies itself -->
<full.dist.product.release.name>WildFly</full.dist.product.release.name>
<full.dist.product.slot>main</full.dist.product.slot>
<full.dist.product.release.version>${project.version}</full.dist.product.release.version>
<full.dist.product.stability.level>community</full.dist.product.stability.level>
<full.dist.product.min.stability.level>experimental</full.dist.product.min.stability.level>
<full.maven.groupId>${project.groupId}</full.maven.groupId>
<full.maven.version>${project.version}</full.maven.version>
<ee.dist.product.release.name>WildFly EE</ee.dist.product.release.name>
<ee.dist.product.slot>${full.dist.product.slot}</ee.dist.product.slot>
<ee.dist.product.release.version>${full.dist.product.release.version}</ee.dist.product.release.version>
<ee.dist.product.stability.level>community</ee.dist.product.stability.level>
<ee.dist.product.min.stability.level>experimental</ee.dist.product.min.stability.level>
<ee.maven.groupId>${project.groupId}</ee.maven.groupId>
<ee.maven.version>${project.version}</ee.maven.version>
<preview.dist.product.release.name>WildFly Preview</preview.dist.product.release.name>
<preview.dist.product.slot>${full.dist.product.slot}</preview.dist.product.slot>
<preview.dist.product.release.version>${full.dist.product.release.version}</preview.dist.product.release.version>
<preview.dist.product.stability.level>preview</preview.dist.product.stability.level>
<preview.dist.product.min.stability.level>experimental</preview.dist.product.min.stability.level>
<product.docs.server.version>39</product.docs.server.version>
<!-- The Galleon channel for the minor version with which this branch is associated. -->
<galleon.minor.channel>${product.docs.server.version}.0</galleon.minor.channel>
<!-- Repository Deployment Settings -->
<nexus.repository.staging>wildfly-staging</nexus.repository.staging>
<nexus.staging.tag>wildfly-${project.version}</nexus.staging.tag>
<!-- Nexus staging repository URL used to retrieve test component releases -->
<nexus.repository.url>https://repository.jboss.org/nexus/</nexus.repository.url> <!-- duplicated from jboss-parent, but Maven 4 wants to know it before accessing jboss-parent -->
<nexus.repository.staging.url>${nexus.repository.url}repository/${nexus.repository.staging}</nexus.repository.staging.url>
<!-- Maven Central release properties -->
<repo.sonatype.url>https://central.sonatype.com</repo.sonatype.url>
<sonatype.server.id>central</sonatype.server.id>
<autoPublish>false</autoPublish>
<waitUntil>validated</waitUntil>
<skipPublishing>false</skipPublishing>
<!-- Galleon -->
<galleon.fork.embedded>true</galleon.fork.embedded>
<galleon.log.time>true</galleon.log.time>
<galleon.offline>true</galleon.offline>
<!-- Checkstyle configuration -->
<linkXRef>false</linkXRef>
<!--
Build configuration. Override JBoss Parent settings as necessary.
For example: <version.surefire.plugin>2.11</version.surefire.plugin>
-->
<maven.min.version>3.6.0</maven.min.version>
<!--
To build, we require a Java 17 or higher compiler, but with a Java 17
source and binary level.
We allow builds with a compiler version higher than 17 to allow
testing on later SE releases.
But, if the 'deploy' phase is executed, we restrict to only SE 17.
WildFly releases are built with SE 17.
See this pom's maven-enforcer-plugin configuration for the rules
that restrict the SE version used when building and deploying.
-->
<required.java.build.version>[17,)</required.java.build.version>
<required.java.deploy.version>[17,18)</required.java.deploy.version>
<maven.compiler.release>17</maven.compiler.release>
<maven.compiler.target>${maven.compiler.release}</maven.compiler.target>
<maven.compiler.source>${maven.compiler.release}</maven.compiler.source>
<!-- TarArchiver behavior -->
<assembly.tarLongFileMode>posix</assembly.tarLongFileMode>
<!--
Modularized JDK support. These are our recommended client-side JPMS settings.
This list should only be modified if we are making a change to our general
recommendation of what settings an external *client* application should use
*in order to utilize our client-side libraries*. It is not meant to cover
settings a client app might need to support it's own code.
This list is not meant to control server-side JPMS settings.
DO NOT add entries here just to support JPMS needs for specialized tests.
The testsuite/pom.xml declares a 'modular.jdk.testsuite.args' property that
defaults to ${modular.jdk.args}, i.e. this list. If particular tests need
additional settings to support client-side behavior in their test code,
then that property should be overridden in as fine-grained a location as
practical, and no more coarse-grained than the global config of the pom
for the maven module that includes the test.
-->
<modular.jdk.args>
--add-exports=java.desktop/sun.awt=ALL-UNNAMED
--add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED
--add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED
--add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED
--add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
--add-opens=java.base/java.net=ALL-UNNAMED
--add-opens=java.base/java.security=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED
--add-opens=java.management/javax.management=ALL-UNNAMED
--add-opens=java.naming/javax.naming=ALL-UNNAMED
</modular.jdk.args>
<!--
See ChildFirstClassLoaderBuilder in model-test for the explanation of the org.jboss.model.test.cache.root and org.jboss.model.test.classpath.cache properties.
If used in conjunction with org.jboss.model.test.classpath.cache -Dorg.jboss.model.test.cache.strict on the command line, transformers tests must
propagate these to the test when run
-->
<!-- The name of the root checkout folder to create org.jboss.model.test.classpath.cache under for subsystem-test and core-model-test -->
<org.jboss.model.test.cache.root>[pom.xml,testsuite]</org.jboss.model.test.cache.root>
<!-- Location relative to root that will be used for the cached legacy classpaths used by subsystem-test and core-model-test-->
<org.jboss.model.test.classpath.cache>target/model-test-classpath-cache</org.jboss.model.test.classpath.cache>
<!-- Properties that drive the names of various directories produced by and used in the build -->
<server.output.dir.prefix>wildfly</server.output.dir.prefix>
<!-- Version suffix that is appended to directories. Default is the maven GAV version but this can be edited to use a short form version -->
<server.output.dir.version>${project.version}</server.output.dir.version>
<!-- Properties related to the directory from which testsuite modules that don't create their own dists
should obtain the dist to test -->
<!-- First, prefix to add to the standard maven child project whose output should be used.
An empty value means no prefix.
Custom test jobs can override this using -D, e.g. -Dtestsuite.default.build.project.prefix=ee- -->
<testsuite.default.build.project.prefix></testsuite.default.build.project.prefix>
<wildfly.build.output.dir>${testsuite.default.build.project.prefix}build/target/${server.output.dir.prefix}-${server.output.dir.version}</wildfly.build.output.dir>
<!-- Protocol to use for communication with remote maven repositories.
You can set to 'http' if you are using a maven proxy and 'https'
interferes with that. Use 'https' for builds that will be released
to non-snapshot public maven repos -->
<maven.repository.protocol>https</maven.repository.protocol>
<!-- The full remote maven repo URL; can be overridden via -D for special use cases -->
<maven.repository.url>${maven.repository.protocol}://repository.jboss.org/nexus/content/groups/public/</maven.repository.url>
<!-- Surefire args -->
<surefire.extra.args></surefire.extra.args>
<surefire.jpda.args></surefire.jpda.args>
<surefire.non-modular.system.args>-ea -Duser.region=US -Duser.language=en ${surefire.jpda.args} ${surefire.extra.args} ${surefire.jacoco.args}</surefire.non-modular.system.args>
<surefire.system.args>${modular.jdk.args} ${surefire.non-modular.system.args}</surefire.system.args>
<arquillian.servlet.protocol>Servlet 5.0</arquillian.servlet.protocol>
<testLogToFile>true</testLogToFile>
<maven.test.redirectTestOutputToFile>${testLogToFile}</maven.test.redirectTestOutputToFile>
<!-- Galleon feature pack to use in testsuite provisioning executions that provide content
that *could* be obtained solely from the wildfly-ee-galleon-pack or its dependencies.
Test jobs can override this using -D to test using different feature pack.
-->
<testsuite.ee.galleon.pack.groupId>${full.maven.groupId}</testsuite.ee.galleon.pack.groupId>
<testsuite.ee.galleon.pack.artifactId>wildfly-galleon-pack</testsuite.ee.galleon.pack.artifactId>
<testsuite.ee.galleon.pack.version>${full.maven.version}</testsuite.ee.galleon.pack.version>
<!-- Galleon feature pack to use in testsuite provisioning executions that provide content
that *cannot* be obtained solely from the wildfly-ee-galleon-pack or its dependencies.
Test jobs can override this using -D to test using a different feature pack.
-->
<testsuite.full.galleon.pack.groupId>${full.maven.groupId}</testsuite.full.galleon.pack.groupId>
<testsuite.full.galleon.pack.artifactId>wildfly-galleon-pack</testsuite.full.galleon.pack.artifactId>
<testsuite.full.galleon.pack.version>${full.maven.version}</testsuite.full.galleon.pack.version>
<!-- Galleon feature pack to use in testsuite provisioning executions that install test-specific content.
Profiles can set this to wildfly-test-feature-pack-preview when testing wildfly-preview.
-->
<testsuite.test.feature.pack.artifactId>wildfly-test-feature-pack</testsuite.test.feature.pack.artifactId>
<!-- WildFly Channels based provisioning configuration.
By default, if channels drive the provisioning we use the 'wildfly' channel.
Profiles that focus on wildfly-preview or wildfly-ee can change that.
-->
<channels.maven.groupId>${project.groupId}.channels</channels.maven.groupId>
<channels.maven.artifactId>wildfly</channels.maven.artifactId>
<channels.maven.version>${full.maven.version}</channels.maven.version>
<!-- Properties that set the phase used for different plugin executions.
Profiles can override the values here to enable/disable executions.
A value of 'none' disables the execution; to enable set the value to the
normal phase for the goal.
This setup allows the bulk of the execution configuration to be in the
default build config (and thus shared in different profiles) while
still being easily disabled in profiles where it is not wanted. -->
<surefire.default-test.phase>test</surefire.default-test.phase>
<!-- Copyright footer for generated documentation -->
<wildfly.copyright><![CDATA[
<img src="https://raw.githubusercontent.com/commonhaus/artwork/main/foundation/brand/project/svg/CF_logo_wildFly_default.svg" style="height: 120px;"/>
<br />
Copyright © <a href="https://wildfly.org">WildFly</a>.<br />
All rights reserved. For details on our trademarks, please visit our <a href="https://www.commonhaus.org/policies/trademark-policy/">Trademark Policy</a> and <a href="https://www.commonhaus.org/trademarks/">Trademark List</a>.<br />
Trademarks of third parties are owned by their respective holders and their mention here does not suggest any endorsement or association.
]]></wildfly.copyright>
<!-- Base wildfly version used by testsuite/galleon/update test to install a server that gets updated to the SNAPSHOT version -->
<wildfly.test.galleon.update.base.version>26.1.1.Final</wildfly.test.galleon.update.base.version>
<!--
Dependency version properties begin here. All other properties should be above.
Properties are grouped by whether they solely relate to plugins, solely relate to test code,
or impact production code.
Each version property should be of the form "version.<groupId>".
For example: <version.org.jboss.as>
In cases where multiple artifacts use the same groupId but have different
versions, add the artifactId or other qualifier to the property name.
In cases where multiple artifacts use the same groupId but have different
versions, add the artifactId or other qualifier to the property name.
For example: <version.org.jboss.hal.release-stream>
Version properties MUST be sorted alphabetically. Except...
For properties only used for building or testing legacy code not used in
standard WildFly or WildFly Preview, prefix the property name with 'legacy.'
For properties only used for building WildFly Preview modules, prefix the property name with 'preview'.
Place the prefixed property in the proper alphabetical location as if the prefix was not present.
In the typical case where there's also the same property without a prefix, put the prefixed
variants after the non-prefixed one.
-->
<!--
*Plugin* Dependency versions. Please keep alphabetical.
Properties for dependencies that are not *solely* related to plugins go in the sections below.
This is not limited to plugin versions. Other artifacts that those plugins depend upon can go here
if they are not otherwise used.
-->
<version.ant.junit>1.10.15</version.ant.junit>
<version.asciidoctor.plugin>2.2.6</version.asciidoctor.plugin>
<version.central.publishing.maven.plugin>0.9.0</version.central.publishing.maven.plugin>
<version.org.jacoco>0.8.12</version.org.jacoco>
<version.org.jboss.galleon>7.0.0.Final</version.org.jboss.galleon>
<version.org.owasp.dependency-check>12.1.6</version.org.owasp.dependency-check>
<version.org.wildfly.bom-builder-plugin>2.0.10.Final</version.org.wildfly.bom-builder-plugin>
<version.org.wildfly.checkstyle-config>1.0.8.Final</version.org.wildfly.checkstyle-config>
<version.org.wildfly.common>1.6.0.Final</version.org.wildfly.common>
<version.org.wildfly.galleon-plugins>8.1.0.Final</version.org.wildfly.galleon-plugins>
<version.org.wildfly.glow>1.5.2.Final</version.org.wildfly.glow>
<version.org.wildfly.licenses.plugin>2.4.2.Final</version.org.wildfly.licenses.plugin>
<version.org.wildfly.plugin>5.1.0.Final</version.org.wildfly.plugin>
<version.org.wildfly.unstable.annotation.api>1.0.2.Final</version.org.wildfly.unstable.annotation.api>
<version.org.wildfly.wildfly-channel-plugin>1.0.30</version.org.wildfly.wildfly-channel-plugin>
<version.org.wildfly.wildfly-maven-gpg-plugin>3.2.8.SP1</version.org.wildfly.wildfly-maven-gpg-plugin>
<version.verifier.plugin>1.1</version.verifier.plugin>
<version.xml.plugin>1.0.2</version.xml.plugin>
<!--
*Non-plugin* TEST CODE dependency versions. Please keep alphabetical.
Properties for dependencies that solely relate to maven plugins go in the plugin section above.
Properties for dependencies that relate to production code go in the production code section below.
-->
<version.com.beust>1.78</version.com.beust>
<version.org.wiremock>3.10.0</version.org.wiremock>
<version.dom4j>2.1.5</version.dom4j>
<version.httpunit>1.7.3</version.httpunit>
<legacy.version.io.netty>4.0.19.Final</legacy.version.io.netty>
<version.io.rest-assured>5.5.6</version.io.rest-assured>
<legacy.version.jakarta.enterprise>2.0.2</legacy.version.jakarta.enterprise>
<legacy.version.jakarta.inject.jakarta.inject-api>1.0.5</legacy.version.jakarta.inject.jakarta.inject-api>
<version.jakarta.mvc>2.1.0</version.jakarta.mvc>
<version.jaxen>1.1.6</version.jaxen>
<version.jsoup>1.15.4</version.jsoup>
<version.junit>4.13.2</version.junit>
<version.org.apache.ds>2.0.0.AM26</version.org.apache.ds>
<version.org.apache.groovy>4.0.27</version.org.apache.groovy>
<version.org.assertj>3.27.7</version.org.assertj>
<version.org.awaitility.awaitility>4.0.3</version.org.awaitility.awaitility>
<version.org.codehaus.plexus.plexus-utils>3.5.1</version.org.codehaus.plexus.plexus-utils>
<version.org.eclipse.jetty>11.0.25</version.org.eclipse.jetty>
<version.org.eclipse.krazo>3.0.1</version.org.eclipse.krazo>
<version.org.hamcrest>2.2</version.org.hamcrest>
<version.org.hamcrest.legacy>1.3</version.org.hamcrest.legacy>
<version.org.htmlunit>4.10.0</version.org.htmlunit>
<version.org.javassist>3.29.2-GA</version.org.javassist>
<version.org.jboss.arquillian.core>1.10.0.Final</version.org.jboss.arquillian.core>
<version.org.jboss.arquillian.jakarta>10.0.0.Final</version.org.jboss.arquillian.jakarta>
<version.org.arquillian.testcontainers>1.0.0.Beta1</version.org.arquillian.testcontainers>
<version.org.jboss.byteman>4.0.26</version.org.jboss.byteman>
<version.org.jboss.logmanager.commons-logging-jboss-logmanager>1.0.3.Final</version.org.jboss.logmanager.commons-logging-jboss-logmanager>
<!-- only needed here until wildfly-arquillian has this version properly synced with arquillian itself -->
<version.org.jboss.shrinkwrap.descriptors>2.0.0</version.org.jboss.shrinkwrap.descriptors>
<!-- It's currently required to use 2.2.7. The wildfly-model-test and wildfly-subsystem-test dependencies bring
in older versions of the org.apache.maven.resolver:* dependencies which are not compatible with newer
versions of the Shrinkwrap Resolvers. -->
<version.org.jboss.shrinkwrap.resolvers>2.2.7</version.org.jboss.shrinkwrap.resolvers>
<version.org.jboss.shrinkwrap.shrinkwrap>1.2.6</version.org.jboss.shrinkwrap.shrinkwrap>
<legacy.version.org.jboss.spec.javax.jms.jboss-jms-api_2.0_spec>2.0.0.Final</legacy.version.org.jboss.spec.javax.jms.jboss-jms-api_2.0_spec>
<version.org.jboss.spec.javax.servlet.jboss-servlet-api_4.0_spec>2.0.0.Final</version.org.jboss.spec.javax.servlet.jboss-servlet-api_4.0_spec>
<version.org.junit>5.14.1</version.org.junit>
<version.org.keycloak>25.0.6</version.org.keycloak>
<version.org.mockito>5.21.0</version.org.mockito>
<version.org.syslog4j>0.9.30</version.org.syslog4j>
<version.org.testcontainers>2.0.3</version.org.testcontainers>
<version.org.testng>7.8.0</version.org.testng>
<!-- The MicroProfile REST Client TCK requires a newer version of TestNG. The version is explicitly overridden
on the dependency on the MicroProfile REST Client TCK POM.
-->
<version.org.testng.mp.rest.client>7.10.2</version.org.testng.mp.rest.client>
<version.org.wildfly.arquillian>5.1.0.Final</version.org.wildfly.arquillian>
<version.org.wildfly.extras.creaper>2.0.3</version.org.wildfly.extras.creaper>
<legacy.version.org.wildfly.naming-client>1.0.17.Final</legacy.version.org.wildfly.naming-client>
<!--
*Non-plugin* PRODUCTION CODE dependency versions. Please keep alphabetical.
Properties for dependencies that solely relate to maven plugins go in the plugin section above.
Properties for dependencies that solely relate to tests go in the test code section above.
-->
<version.antlr>4.13.0</version.antlr>
<version.at.yawk.lz4.lz4-java>1.10.2</version.at.yawk.lz4.lz4-java>
<version.com.carrotsearch.hppc>0.10.0</version.com.carrotsearch.hppc>
<version.com.fasterxml.classmate>1.5.1</version.com.fasterxml.classmate>
<version.com.fasterxml.jackson>2.20.1</version.com.fasterxml.jackson>
<version.com.github.ben-manes.caffeine>3.2.3</version.com.github.ben-manes.caffeine>
<version.com.github.fge.btf>1.2</version.com.github.fge.btf>
<version.com.github.fge.jackson-coreutils>1.8</version.com.github.fge.jackson-coreutils>
<version.com.github.fge.json-patch>1.9</version.com.github.fge.json-patch>
<version.com.github.fge.msg-simple>1.1</version.com.github.fge.msg-simple>
<version.com.github.luben.zstd-jni>1.5.7-6</version.com.github.luben.zstd-jni>
<version.com.google.api.grpc>2.0.1</version.com.google.api.grpc>
<version.com.google.code.gson>2.13.1</version.com.google.code.gson>
<version.com.google.guava>33.0.0-jre</version.com.google.guava>
<version.com.google.guava.failureaccess>1.0.3</version.com.google.guava.failureaccess>
<version.com.google.protobuf>4.28.3</version.com.google.protobuf>
<!-- n.b. H2 version here is driven by what Hibernate ORM version tests with as the H2 dialect! -->
<version.com.h2database>2.2.224</version.com.h2database>
<version.com.ibm.async.asyncutil>0.1.0</version.com.ibm.async.asyncutil>
<version.com.microsoft.azure>8.6.6</version.com.microsoft.azure>
<version.com.nimbus.jose-jwt>10.3.1</version.com.nimbus.jose-jwt>
<version.com.sun.istack>4.1.2</version.com.sun.istack>
<version.com.sun.xml.fastinfoset>2.1.1</version.com.sun.xml.fastinfoset>
<version.com.sun.xml.messaging.saaj>3.0.4</version.com.sun.xml.messaging.saaj>
<version.commons-beanutils>1.11.0</version.commons-beanutils>
<version.commons-codec>1.17.2</version.commons-codec>
<version.commons-collections>3.2.2</version.commons-collections>
<version.commons-io>2.16.1</version.commons-io>
<version.de.dentrassi.crypto>2.4.0</version.de.dentrassi.crypto>
<version.gnu.getopt>1.0.13</version.gnu.getopt>
<version.io.agroal>2.0</version.io.agroal>
<version.io.github.resilience4j>2.3.0</version.io.github.resilience4j>
<version.io.grpc>1.70.0</version.io.grpc>
<version.io.micrometer>1.15.7</version.io.micrometer>
<version.io.netty>4.1.130.Final</version.io.netty>
<version.io.opentelemetry.instrumentation>2.14.0</version.io.opentelemetry.instrumentation>
<version.io.opentelemetry.opentelemetry-semconv>1.32.0</version.io.opentelemetry.opentelemetry-semconv>
<version.io.opentelemetry.opentelemetry>1.48.0</version.io.opentelemetry.opentelemetry>
<version.io.opentelemetry.proto>1.5.0-alpha</version.io.opentelemetry.proto>
<version.io.prometheus>1.3.3</version.io.prometheus>
<version.io.reactivex.rxjava2>2.2.21</version.io.reactivex.rxjava2>
<version.io.reactivex.rxjava3>3.1.12</version.io.reactivex.rxjava3>
<version.io.smallrye.open-api>4.2.3</version.io.smallrye.open-api>
<version.io.smallrye.reactive-utils>2.6.0</version.io.smallrye.reactive-utils>
<version.io.smallrye.smallrye-config>3.13.4</version.io.smallrye.smallrye-config>
<version.io.smallrye.smallrye-fault-tolerance>6.10.0</version.io.smallrye.smallrye-fault-tolerance>
<version.io.smallrye.smallrye-health>4.3.0</version.io.smallrye.smallrye-health>
<version.io.smallrye.smallrye-jwt>4.3.1</version.io.smallrye.smallrye-jwt>
<version.io.smallrye.smallrye-mutiny>2.8.0</version.io.smallrye.smallrye-mutiny>
<version.io.smallrye.smallrye-mutiny-vertx>3.17.1</version.io.smallrye.smallrye-mutiny-vertx>
<version.io.smallrye.smallrye-mutiny-zero>1.1.1</version.io.smallrye.smallrye-mutiny-zero>
<version.io.smallrye.smallrye-opentelemetry>2.11.2</version.io.smallrye.smallrye-opentelemetry>
<version.io.smallrye.smallrye-stork>2.7.7</version.io.smallrye.smallrye-stork>
<version.io.smallrye.smallrye-reactive-messaging>4.30.0</version.io.smallrye.smallrye-reactive-messaging>
<version.io.undertow.jastow>2.2.8.Final</version.io.undertow.jastow>
<version.io.vertx.vertx>4.5.24</version.io.vertx.vertx>
<version.jakarta.activation.jakarta.activation-api>2.1.4</version.jakarta.activation.jakarta.activation-api>
<version.jakarta.annotation.jakarta-annotation-api>2.1.1</version.jakarta.annotation.jakarta-annotation-api>
<version.jakarta.batch.jakarta.batch-api>2.1.1</version.jakarta.batch.jakarta.batch-api>
<version.jakarta.data.jakarta-data-api>1.0.1</version.jakarta.data.jakarta-data-api>
<version.jakarta.ejb.jakarta-ejb-api>4.0.1</version.jakarta.ejb.jakarta-ejb-api>
<version.jakarta.enterprise.concurrent.jakarta-enterprise.concurrent-api>3.0.3</version.jakarta.enterprise.concurrent.jakarta-enterprise.concurrent-api>
<version.jakarta.enterprise>4.0.1</version.jakarta.enterprise>
<version.jakarta.faces.jakarta-faces-api>4.0.1</version.jakarta.faces.jakarta-faces-api>
<version.jakarta.faces>4.0.13</version.jakarta.faces>
<version.jakarta.inject.jakarta.inject-api>2.0.1</version.jakarta.inject.jakarta.inject-api>
<version.jakarta.jms.jakarta-jms-api>3.1.0</version.jakarta.jms.jakarta-jms-api>
<version.jakarta.json.bind.api>3.0.1</version.jakarta.json.bind.api>
<version.jakarta.mail-api>2.1.3</version.jakarta.mail-api>
<version.jakarta.mvc.jakarta-mvc-api>2.1.0</version.jakarta.mvc.jakarta-mvc-api>
<version.jakarta.persistence>3.1.0</version.jakarta.persistence>
<version.jakarta.resource.jakarta-resource-api>2.1.0</version.jakarta.resource.jakarta-resource-api>
<version.jakarta.security.enterprise>3.0.0</version.jakarta.security.enterprise>
<version.jakarta.servlet.jakarta-servlet-api>6.0.0</version.jakarta.servlet.jakarta-servlet-api>
<version.jakarta.servlet.jsp.jakarta-servlet-jsp-api>3.1.1</version.jakarta.servlet.jsp.jakarta-servlet-jsp-api>
<version.jakarta.servlet.jsp.jstl.jakarta-servlet-jsp-jstl-api>3.0.2</version.jakarta.servlet.jsp.jstl.jakarta-servlet-jsp-jstl-api>
<version.jakarta.transaction.jakarta-transaction-api>2.0.1</version.jakarta.transaction.jakarta-transaction-api>
<version.jakarta.validation.jakarta-validation-api>3.0.2</version.jakarta.validation.jakarta-validation-api>
<version.jakarta.websocket.jakarta-websocket-api>2.1.1</version.jakarta.websocket.jakarta-websocket-api>
<version.jakarta.ws.rs.jakarta-ws-rs-api>3.1.0</version.jakarta.ws.rs.jakarta-ws-rs-api>
<version.jakarta.xml.bind.jakarta-xml-bind-api>4.0.4</version.jakarta.xml.bind.jakarta-xml-bind-api>
<version.jboss.jaxbintros>2.0.1</version.jboss.jaxbintros>
<version.joda-time>2.12.7</version.joda-time>
<version.net.jcip>1.0</version.net.jcip>
<version.net.shibboleth.utilities.java-support>8.0.0</version.net.shibboleth.utilities.java-support>
<version.org.apache.activemq.artemis>2.44.0</version.org.apache.activemq.artemis>
<version.org.apache.activemq.artemis.native>2.0.0</version.org.apache.activemq.artemis.native>
<version.org.apache.avro>1.12.0</version.org.apache.avro>
<version.org.apache.cxf>4.0.10</version.org.apache.cxf>
<version.org.apache.cxf.xjcplugins>4.1.0</version.org.apache.cxf.xjcplugins>
<version.org.apache.httpcomponents.httpasyncclient>4.1.5</version.org.apache.httpcomponents.httpasyncclient>
<version.org.apache.james.apache-mime4j>0.8.13</version.org.apache.james.apache-mime4j>
<version.org.apache.kafka>3.9.1</version.org.apache.kafka>
<version.org.apache.kafka.test-image>3.8.0</version.org.apache.kafka.test-image>
<version.org.apache.lucene>9.11.1</version.org.apache.lucene>
<version.org.apache.neethi>3.2.1</version.org.apache.neethi>
<version.org.apache.qpid.proton>0.34.1</version.org.apache.qpid.proton>
<version.org.apache.santuario>3.0.6</version.org.apache.santuario>
<version.org.apache.velocity>2.4.1</version.org.apache.velocity>
<version.org.apache.wss4j>3.0.5</version.org.apache.wss4j>
<version.org.apache.ws.xmlschema>2.3.0</version.org.apache.ws.xmlschema>
<version.org.bitbucket.jose4j>0.9.6</version.org.bitbucket.jose4j>
<version.org.bytebuddy>1.17.5</version.org.bytebuddy>
<version.org.codehaus.woodstox.stax2-api>4.2.2</version.org.codehaus.woodstox.stax2-api>
<version.org.codehaus.woodstox.woodstox-core>7.0.0</version.org.codehaus.woodstox.woodstox-core>
<version.org.cryptacular>1.2.5</version.org.cryptacular>
<version.org.eclipse.angus.angus-activation>2.0.3</version.org.eclipse.angus.angus-activation>
<version.org.eclipse.angus.angus-mail>2.0.4</version.org.eclipse.angus.angus-mail>
<version.org.eclipse.jdt>3.33.0</version.org.eclipse.jdt>
<version.org.eclipse.microprofile>7.1</version.org.eclipse.microprofile>
<version.org.eclipse.microprofile.config.api>3.1</version.org.eclipse.microprofile.config.api>
<version.org.eclipse.microprofile.fault-tolerance.api>4.1.2</version.org.eclipse.microprofile.fault-tolerance.api>
<version.org.eclipse.microprofile.health.api>4.0.1</version.org.eclipse.microprofile.health.api>
<version.org.eclipse.microprofile.jwt.api>2.1</version.org.eclipse.microprofile.jwt.api>
<version.org.eclipse.microprofile.lra.api>2.0.1</version.org.eclipse.microprofile.lra.api>
<version.org.eclipse.microprofile.openapi>4.1.1</version.org.eclipse.microprofile.openapi>
<version.org.eclipse.microprofile.reactive-messaging.api>3.0.1</version.org.eclipse.microprofile.reactive-messaging.api>
<version.org.eclipse.microprofile.reactive-streams-operators.api>3.0.1</version.org.eclipse.microprofile.reactive-streams-operators.api>
<version.org.eclipse.microprofile.rest.client.api>4.0</version.org.eclipse.microprofile.rest.client.api>
<version.org.eclipse.microprofile.telemetry>2.1</version.org.eclipse.microprofile.telemetry>
<version.org.eclipse.persistence.eclipselink>4.0.8</version.org.eclipse.persistence.eclipselink>
<version.org.eclipse.yasson>3.0.4</version.org.eclipse.yasson>
<version.org.elasticsearch.client.rest-client>8.15.4</version.org.elasticsearch.client.rest-client>
<version.org.glassfish.expressly>5.0.0</version.org.glassfish.expressly>
<version.org.glassfish.jakarta.enterprise.concurrent>3.0.2</version.org.glassfish.jakarta.enterprise.concurrent>
<version.org.glassfish.jaxb>4.0.6</version.org.glassfish.jaxb>
<version.org.glassfish.jaxb.jaxb-xjc>${version.org.glassfish.jaxb}</version.org.glassfish.jaxb.jaxb-xjc>
<version.org.glassfish.soteria>3.0.3</version.org.glassfish.soteria>
<version.org.glassfish.web.jakarta.servlet.jsp.jstl>3.0.1-jbossorg-1</version.org.glassfish.web.jakarta.servlet.jsp.jstl>
<version.org.hibernate.commons.annotations>7.0.3.Final</version.org.hibernate.commons.annotations>
<version.org.hibernate>6.6.40.Final</version.org.hibernate>
<version.org.hibernate.search>7.2.5.Final</version.org.hibernate.search>
<version.org.hibernate.validator>8.0.3.Final</version.org.hibernate.validator>
<version.org.hornetq>2.4.11.Final</version.org.hornetq>
<version.org.infinispan>16.0.5</version.org.infinispan>
<version.org.jasypt>1.9.3</version.org.jasypt>
<version.org.jberet>3.1.0.Final</version.org.jberet>
<version.org.jboss.activemq.artemis.integration>2.0.4.Final</version.org.jboss.activemq.artemis.integration>
<version.org.jboss.common.jboss-common-beans>2.0.1.Final</version.org.jboss.common.jboss-common-beans>
<version.org.jboss.ejb-client>5.0.8.Final</version.org.jboss.ejb-client>
<version.org.jboss.ejb3.ext-api>2.4.0.Final</version.org.jboss.ejb3.ext-api>
<version.org.jboss.genericjms>3.0.0.Final</version.org.jboss.genericjms>
<version.org.jboss.hal.console>3.7.17.Final</version.org.jboss.hal.console>
<version.org.jboss.iiop-client>2.0.1.Final</version.org.jboss.iiop-client>
<version.org.jboss.ironjacamar>3.0.18.Final</version.org.jboss.ironjacamar>
<version.org.jboss.jboss-transaction-spi>8.0.0.Final</version.org.jboss.jboss-transaction-spi>
<version.org.jboss.metadata>17.0.0</version.org.jboss.metadata>
<version.org.jboss.mod_cluster>2.1.0.Final</version.org.jboss.mod_cluster>
<version.org.jboss.narayana>7.3.3.Final</version.org.jboss.narayana>
<version.org.jboss.narayana.lra>1.0.3.Final</version.org.jboss.narayana.lra>
<version.org.jboss.openjdk-orb>10.1.3.Final</version.org.jboss.openjdk-orb>
<version.org.jboss.resteasy>6.2.15.Final</version.org.jboss.resteasy>
<version.org.jboss.resteasy.extensions>2.0.1.Final</version.org.jboss.resteasy.extensions>
<version.org.jboss.resteasy.microprofile>3.0.1.Final</version.org.jboss.resteasy.microprofile>
<version.org.jboss.resteasy.spring>3.2.0.Final</version.org.jboss.resteasy.spring>
<version.org.jboss.spec.jakarta.el.jboss-el-api_5.0_spec>4.0.2.Final</version.org.jboss.spec.jakarta.el.jboss-el-api_5.0_spec>
<version.org.jboss.spec.jakarta.xml.soap.saaj-api_3.0_spec>1.0.0.Final</version.org.jboss.spec.jakarta.xml.soap.saaj-api_3.0_spec>
<version.org.jboss.spec.jakarta.xml.ws.api_4.0_spec>1.0.0.Final</version.org.jboss.spec.jakarta.xml.ws.api_4.0_spec>
<version.org.jboss.universe.community>1.2.0.Final</version.org.jboss.universe.community>
<version.org.jboss.universe.producer.wildfly>1.3.16.Final</version.org.jboss.universe.producer.wildfly>
<version.org.jboss.weld.weld>5.1.6.Final</version.org.jboss.weld.weld>
<version.org.jboss.weld.weld-api>5.0.SP3</version.org.jboss.weld.weld-api>
<version.org.jboss.ws.api>3.0.0.Final</version.org.jboss.ws.api>
<version.org.jboss.ws.common>5.1.0.Final</version.org.jboss.ws.common>
<version.org.jboss.ws.common.tools>2.1.0.Final</version.org.jboss.ws.common.tools>
<version.org.jboss.ws.cxf>7.3.7.Final</version.org.jboss.ws.cxf>
<version.org.jboss.ws.jaxws-undertow-httpspi>2.0.0.Final</version.org.jboss.ws.jaxws-undertow-httpspi>
<version.org.jboss.ws.spi>5.0.0.Final</version.org.jboss.ws.spi>
<version.org.jboss.xnio.netty.netty-xnio-transport>0.1.10.Final</version.org.jboss.xnio.netty.netty-xnio-transport>
<version.org.jctools.jctools-core>4.0.5</version.org.jctools.jctools-core>
<version.org.jgroups>5.5.2.Final</version.org.jgroups>
<version.org.jgroups.aws>4.0.0.Final</version.org.jgroups.aws>
<version.org.jgroups.azure>2.0.2.Final</version.org.jgroups.azure>
<version.org.jgroups.kubernetes>2.0.2.Final</version.org.jgroups.kubernetes>
<version.org.jipijapa>1.0.1.Final</version.org.jipijapa>
<version.org.jvnet.staxex>2.1.0</version.org.jvnet.staxex>
<version.org.keycloak.keycloak-saml-wildfly-subsystem>18.0.2</version.org.keycloak.keycloak-saml-wildfly-subsystem>
<version.org.kohsuke.metainf-services>1.11</version.org.kohsuke.metainf-services>
<version.org.opensaml.opensaml>4.3.2</version.org.opensaml.opensaml>
<version.org.ow2.asm>9.7.1</version.org.ow2.asm>
<version.org.reactivestreams>1.0.4</version.org.reactivestreams>
<version.org.wildfly.clustering>9.0.2.Final</version.org.wildfly.clustering>
<!--
Maintain separation between these two frequently updated artifacts to avoid merge conflicts.
-->
<version.org.wildfly.core>31.0.3.Final</version.org.wildfly.core>
<version.org.wildfly.http-client>2.1.3.Final</version.org.wildfly.http-client>
<version.org.wildfly.launcher>1.0.2.Final</version.org.wildfly.launcher>
<version.org.wildfly.mvc.krazo>2.0.1.Final</version.org.wildfly.mvc.krazo>
<version.org.wildfly.vertx>1.0.2.Final</version.org.wildfly.vertx>
<version.org.wildfly.naming-client>2.0.1.Final</version.org.wildfly.naming-client>
<version.org.wildfly.security.elytron-tests-common>2.4.2.Final</version.org.wildfly.security.elytron-tests-common>
<version.org.wildfly.security.elytron-mp>2.0.0.Final</version.org.wildfly.security.elytron-mp>
<version.org.wildfly.transaction.client>3.0.5.Final</version.org.wildfly.transaction.client>
<version.org.wildfly.wildfly-application-development-guide>1.0.0.Final</version.org.wildfly.wildfly-application-development-guide>
<preview.version.org.wildfly.wildfly-ee-9-deployment-transformer>2.0.0.Final</preview.version.org.wildfly.wildfly-ee-9-deployment-transformer>
<version.software.amazon.awssdk>2.40.9</version.software.amazon.awssdk>
<version.software.amazon.eventstream>1.0.1</version.software.amazon.eventstream>
<version.org.xerial.snappy.snappy-java>1.1.10.5</version.org.xerial.snappy.snappy-java>
<version.sun.jaxb>${version.org.glassfish.jaxb}</version.sun.jaxb>
<version.wsdl4j>1.6.3</version.wsdl4j>
<version.xml-resolver>1.2</version.xml-resolver>
</properties>
<dependencyManagement>
<dependencies>
<!-- Import the core parent to get all the managed dependencies from core -->
<dependency>
<groupId>org.wildfly.core</groupId>
<artifactId>wildfly-core-parent</artifactId>
<version>${version.org.wildfly.core}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Keep sorted -->
<dependency>
<groupId>${channels.maven.groupId}</groupId>
<artifactId>wildfly</artifactId>
<version>${full.maven.version}</version>
<type>yaml</type>
<classifier>manifest</classifier>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-common-ee-dependency-management</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-common-expansion-dependency-management</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-ee-build</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${channels.maven.groupId}</groupId>
<artifactId>wildfly-ee</artifactId>
<version>${ee.maven.version}</version>
<type>yaml</type>
<classifier>manifest</classifier>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-ee-dist</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-ee-feature-pack-galleon-local</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-ee-feature-pack-galleon-local</artifactId>
<version>${ee.maven.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-ee-feature-pack-galleon-shared</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-ee-feature-pack-galleon-shared</artifactId>
<version>${ee.maven.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-ee-galleon-pack</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-ee-galleon-pack</artifactId>
<version>${ee.maven.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-legacy-ee-bom</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-build</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${channels.maven.groupId}</groupId>
<artifactId>wildfly-preview</artifactId>
<version>${ee.maven.version}</version>
<type>yaml</type>
<classifier>manifest</classifier>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-dist</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-ee-bom</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-expansion-bom</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-feature-pack</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-feature-pack</artifactId>
<version>${ee.maven.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-feature-pack-galleon-local</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-feature-pack-galleon-local</artifactId>
<version>${ee.maven.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-test-bom</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-preview-test-expansion-bom</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-standard-ee-bom</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-standard-expansion-bom</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${ee.maven.groupId}</groupId>
<artifactId>wildfly-standard-test-bom</artifactId>
<version>${ee.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-build</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-dist</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-feature-pack-galleon-local</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-feature-pack-galleon-shared</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-galleon-pack</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-galleon-pack</artifactId>
<version>${full.maven.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-legacy-expansion-bom</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-release</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>${full.maven.groupId}</groupId>
<artifactId>wildfly-standard-test-expansion-bom</artifactId>
<version>${full.maven.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-application-development-guide</artifactId>
<version>${version.org.wildfly.wildfly-application-development-guide}</version>
<classifier>sources</classifier>
<type>zip</type>
</dependency>
<dependency>
<groupId>org.wildfly.checkstyle</groupId>
<artifactId>wildfly-checkstyle-config</artifactId>
<version>${version.org.wildfly.checkstyle-config}</version>
</dependency>
<dependency>
<groupId>org.wildfly.galleon-plugins</groupId>
<artifactId>wildfly-config-gen</artifactId>
<version>${version.org.wildfly.galleon-plugins}</version>
<exclusions>
<exclusion>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.wildfly.galleon-plugins</groupId>
<artifactId>wildfly-galleon-plugins</artifactId>
<version>${version.org.wildfly.galleon-plugins}</version>
<exclusions>
<exclusion>
<groupId>org.jboss.galleon</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-services</artifactId>
<version>${version.org.keycloak}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.universe</groupId>
<artifactId>community-universe</artifactId>
<version>${version.org.jboss.universe.community}</version>
</dependency>
<dependency>
<groupId>org.jboss.universe.producer</groupId>
<artifactId>wildfly-producers</artifactId>
<version>${version.org.jboss.universe.producer.wildfly}</version>
</dependency>
</dependencies>
</dependencyManagement>
<repositories>
<repository>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
<id>jboss-public-repository-group</id>
<name>JBoss Public Repository Group</name>
<url>${maven.repository.url}</url>
<layout>default</layout>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
<id>jboss-public-repository-group</id>
<name>JBoss Public Repository Group</name>
<url>${maven.repository.url}</url>
</pluginRepository>
</pluginRepositories>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>${version.jar.plugin}</version>
<configuration>
<archive>
<manifestEntries>
<Scm-Url>${jboss.as.scm.url}</Scm-Url>
<JBossAS-Release-Version>${project.version}</JBossAS-Release-Version>
<JBossAS-Release-Codename>${jboss.as.release.codename}</JBossAS-Release-Codename>
</manifestEntries>
</archive>
<!-- Do not package the generated logging properties as the generated binaries will be packaged -->
<!-- These files are not required at runtime -->
<excludes>
<exclude>**/*.i18n.properties</exclude>
<exclude>**/*.i18n_*.properties</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${version.surefire.plugin}</version>
<configuration>
<redirectTestOutputToFile>${maven.test.redirectTestOutputToFile}</redirectTestOutputToFile>
<enableAssertions>true</enableAssertions>
<systemPropertyVariables>
<org.jboss.model.test.cache.root>${org.jboss.model.test.cache.root}</org.jboss.model.test.cache.root>
<org.jboss.model.test.classpath.cache>${org.jboss.model.test.classpath.cache}</org.jboss.model.test.classpath.cache>
<org.jboss.model.test.cache.strict>true</org.jboss.model.test.cache.strict>
<!--<org.jboss.model.test.maven.repository.urls>${org.jboss.model.test.maven.repository.urls}</org.jboss.model.test.maven.repository.urls>-->
<java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
<jdk.xml.enableTemplatesImplDeserialization>true</jdk.xml.enableTemplatesImplDeserialization>
</systemPropertyVariables>
<argLine>${surefire.system.args}</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<doclint>none</doclint>
</configuration>
</plugin>
<!-- Checkstyle -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${version.checkstyle.plugin}</version>
<executions>
<execution>
<id>check-style</id>
<phase>compile</phase>
<goals>
<goal>checkstyle</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.wildfly.checkstyle</groupId>
<artifactId>wildfly-checkstyle-config</artifactId>
<version>${version.org.wildfly.checkstyle-config}</version>
</dependency>
</dependencies>
<configuration>
<configLocation>wildfly-checkstyle/checkstyle.xml</configLocation>
<consoleOutput>true</consoleOutput>
<failsOnError>true</failsOnError>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
<excludes>**/*$logger.java,**/*$bundle.java,**/*$___Marshaller_*.java,**/*SerializationContextInitializerImpl.java</excludes>
<suppressionsLocation>checkstyle-suppressions.xml</suppressionsLocation>
<useFile></useFile>
</configuration>
</plugin>
<!-- Ban bad dependencies and require Java 11 for deploying -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>${version.enforcer.plugin}</version>
<executions>
<execution>
<id>ban-bad-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<searchTransitive>true</searchTransitive>
<excludes>
<exclude>args4j:args4j</exclude>
<exclude>biz.aQute:bnd</exclude>
<exclude>ch.qos.reload4j:reload4j</exclude>
<exclude>com.google.gwt.inject:gin</exclude>
<exclude>com.google.inject:guice</exclude>
<exclude>com.gwtplatform:gwtp-all</exclude>
<exclude>com.sun.activation:javax.activation</exclude>
<exclude>com.sun.mail:javax.mail</exclude>
<exclude>com.sun.xml.bind:jaxb-core</exclude>
<exclude>com.sun.xml.bind:jaxb-impl</exclude>
<exclude>com.sun.xml.bind:jaxb-xjc</exclude>
<exclude>commons-httpclient:commons-httpclient</exclude>
<exclude>commons-logging:commons-logging</exclude>
<exclude>commons-logging:commons-logging-api</exclude>
<exclude>concurrent:concurrent</exclude>
<exclude>dom4j:dom4j</exclude>
<exclude>jacorb:jacorb</exclude>
<exclude>javassist:javassist</exclude>
<exclude>javax.activation:activation</exclude>
<exclude>javax.activation:javax.activation-api</exclude>
<exclude>javax.enterprise:cdi-api</exclude>
<exclude>javax.inject:javax.inject</exclude>
<exclude>javax.json:javax.json-api</exclude>
<exclude>javax.persistence:javax.persistence-api</exclude>
<exclude>javax.persistence:persistence-api</exclude>
<exclude>javax.security.enterprise:javax.security.enterprise-api</exclude>
<exclude>javax.servlet:servlet-api</exclude>
<exclude>javax.transaction:jta</exclude>
<exclude>javax.validation:validation-api</exclude>
<exclude>javax.xml:jaxrpc-api</exclude>
<exclude>javax.xml.bind:jaxb-api</exclude>
<exclude>javax.xml.soap:saaj-api</exclude>
<exclude>javax.xml.stream:stax-api</exclude>
<exclude>jboss:jboss-logging-spi</exclude>
<exclude>jboss:jboss-serialization</exclude>
<exclude>jboss.web:el-api</exclude>
<exclude>jboss.web:jsp-api</exclude>
<exclude>jboss.web:servlet-api</exclude>
<exclude>log4j:log4j</exclude>
<exclude>net.sf.kxml:kxml2</exclude>
<exclude>org.apache.geronimo.specs:geronimo-activation_1.1_spec</exclude>
<exclude>org.apache.geronimo.specs:geronimo-jaxb_2.1_spec</exclude>
<exclude>org.apache.geronimo.specs:geronimo-saaj_1.3_spec</exclude>
<exclude>org.apache.geronimo.specs:geronimo-stax-api_1.0_spec</exclude>
<exclude>org.apache.xalan:serializer</exclude>
<exclude>org.apache.xalan:xalan</exclude>
<!-- replaced by org.bouncycastle:*-jdk18on -->
<exclude>org.bouncycastle:bcpg-jdk15on</exclude>
<exclude>org.bouncycastle:bcprov-jdk15on</exclude>
<exclude>org.bouncycastle:bcpkix-jdk15on</exclude>
<exclude>org.bouncycastle:bcutil-jdk15on</exclude>
<exclude>org.codehaus.jackson:jackson-core-asl</exclude>
<exclude>org.codehaus.jackson:jackson-jaxrs</exclude>
<exclude>org.codehaus.jackson:jackson-mapper-asl</exclude>
<exclude>org.codehaus.jackson:jackson-xc</exclude>
<exclude>org.glassfish:javax.json</exclude>
<exclude>org.glassfish.soteria:javax.security.enterprise</exclude>
<exclude>org.hibernate:ejb3-persistence</exclude>
<exclude>org.hibernate.java-persistence:jpa-api</exclude>
<!-- replaced by wildfly-naming-client -->
<exclude>org.jboss:jboss-remote-naming</exclude>
<!--<exclude>org.jboss:jboss-common-core</exclude>-->
<exclude>org.jboss.integration:jboss-jca-spi</exclude>
<exclude>org.jboss.interceptor:jboss-interceptor-api</exclude>
<exclude>org.jboss.javaee:jboss-javaee</exclude>
<exclude>org.jboss.javaee:jboss-jacc-api</exclude>
<exclude>org.jboss.javaee:jboss-jad-api</exclude>
<exclude>org.jboss.javaee:jboss-jaspi-api</exclude>
<exclude>org.jboss.javaee:jboss-jca-api</exclude>
<exclude>org.jboss.javaee:jboss-jms-api</exclude>
<exclude>org.jboss.javaee:servlet-api</exclude>
<exclude>org.jboss.javaee:jsp-api</exclude>
<exclude>org.jboss.javaee:jboss-transaction-api</exclude>
<exclude>org.jboss.logging:jboss-logging-generator</exclude>
<exclude>org.jboss.logging:jboss-logging-log4j</exclude>
<exclude>org.jboss.logging:jboss-logging-jdk</exclude>
<exclude>org.jboss.logging:jboss-logging-logmanager</exclude>
<exclude>org.jboss.logging:jboss-logging-spi</exclude>
<exclude>org.jboss.logging:jboss-logging-tools</exclude>
<!-- replaced by io.netty:netty -->
<exclude>org.jboss.netty:netty</exclude>
<!-- replaced by io.netty:netty-all -->
<exclude>io.netty:netty</exclude>
<exclude>org.jboss.remoting3:jboss-remoting</exclude>
<exclude>org.jboss.security:jbosssx</exclude>
<!-- replaced by wildfly-elytron -->
<exclude>org.jboss.sasl:jboss-sasl</exclude>
<exclude>org.jboss.slf4j:slf4j-jboss-logging</exclude>
<exclude>org.jboss.spec.javax.resource:jboss-connector-api_1.5_spec</exclude>
<exclude>org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec</exclude>
<exclude>org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec</exclude>
<exclude>org.jboss.spec.javax.xml.soap:jboss-saaj-api_1.3_spec</exclude>
<exclude>org.ops4j.base</exclude>
<exclude>org.ops4j.pax.swissbox</exclude>
<exclude>org.ops4j.pax.web</exclude>
<exclude>org.slf4j:slf4j-nop</exclude>
<exclude>org.slf4j:slf4j-jdk14</exclude>
<exclude>org.slf4j:slf4j-log4j12</exclude>
<exclude>org.slf4j:slf4j-log4j13</exclude>
<!-- replaced by wildfly-elytron -->
<exclude>org.wildfly.security:wildfly-security-manager</exclude>
<exclude>oro:oro</exclude>
<exclude>relaxngDatatype:relaxngDatatype</exclude>
<exclude>stax:stax-api</exclude>
<exclude>sun-jaxb:jaxb-api</exclude>
<exclude>trove:trove</exclude>
<exclude>woodstox:wstx-lgpl</exclude>
<exclude>xml-apis:xml-apis</exclude>
<!-- Jandex moved to SmallRye -->
<exclude>org.jboss:jandex</exclude>
<!-- We don't want the shaded jar that shades external artifacts -->
<exclude>org.wildfly.security:wildfly-elytron</exclude>
</excludes>
</bannedDependencies>
<dependencyConvergence></dependencyConvergence>
</rules>
</configuration>
</execution>
<execution>
<id>require-java17-build</id>
<goals>
<goal>enforce</goal>
</goals>
<phase>compile</phase>
<configuration>
<rules>
<requireJavaVersion>
<version>${required.java.build.version}</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
<execution>
<id>require-java17-deploy</id>
<goals>
<goal>enforce</goal>
</goals>
<phase>deploy</phase>
<configuration>
<rules>
<requireJavaVersion>
<version>${required.java.deploy.version}</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<!--This plugin here is bogus, only here to make eclipse not break down and cry when it sees maven project.-->
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<versionRange>[2.1,)</versionRange>
<goals>
<goal>copy</goal>
<goal>properties</goal>
<goal>copy-dependencies</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<versionRange>[2.5,)</versionRange>
<goals>
<goal>checkstyle</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<versionRange>[2.4.1,)</versionRange>
<goals>
<goal>clean</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<versionRange>[1.4,)</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>javacc-maven-plugin</artifactId>
<versionRange>[2.5,)</versionRange>
<goals>
<goal>jjtree</goal>
<goal>javacc</goal>
<goal>jjtree-javacc</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xml-maven-plugin</artifactId>
<versionRange>[1.0,)</versionRange>
<goals>
<goal>transform</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-help-plugin</artifactId>
<versionRange>[2.1.1,)</versionRange>
<goals>
<goal>active-profiles</goal>
<goal>effective-pom</goal>
<goal>effective-settings</goal>
<goal>system</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>keytool-maven-plugin</artifactId>
<versionRange>[1.2,)</versionRange>
<goals>
<goal>clean</goal>
<goal>genkey</goal>
<goal>generateKeyPair</goal>
<goal>generateSecretKey</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.wildfly.build</groupId>
<artifactId>wildfly-server-provisioning-maven-plugin</artifactId>
<versionRange>[1.0.0.Alpha2,)</versionRange>
<goals>
<goal>build</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xml-maven-plugin</artifactId>
<version>${version.xml.plugin}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-help-plugin</artifactId>
<version>${version.help.plugin}</version>
</plugin>
<plugin>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-maven-gpg-plugin</artifactId>
<version>${version.org.wildfly.wildfly-maven-gpg-plugin}</version>
<configuration>
<useAgent>true</useAgent>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>${gpg.pinEntryMode}</arg>
</gpgArguments>
</configuration>
</plugin>
<plugin>
<groupId>org.jboss.galleon</groupId>
<artifactId>galleon-maven-plugin</artifactId>
<version>${version.org.jboss.galleon}</version>
</plugin>
<plugin>
<groupId>org.wildfly.galleon-plugins</groupId>
<artifactId>wildfly-galleon-maven-plugin</artifactId>
<version>${version.org.wildfly.galleon-plugins}</version>
<dependencies>
<!-- feature-spec-gen uses wildfly-embedded to generate the feature specs, hence the designated wildfly-embedded version must match the pack one -->
<dependency>
<groupId>org.wildfly.core</groupId>
<artifactId>wildfly-embedded</artifactId>
<version>${version.org.wildfly.core}</version>
</dependency>
<!-- If you add a dependency on wildfly-embedded you need to bring your own transitives -->
<dependency>
<groupId>org.wildfly.common</groupId>
<artifactId>wildfly-common</artifactId>
<version>${version.org.wildfly.common}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.wildfly.unstable.api.annotation</groupId>
<artifactId>unstable-api-annotation-classpath-indexer-plugin</artifactId>
<version>${version.org.wildfly.unstable.annotation.api}</version>
<executions>
<execution>
<id>scan-experimental-annotations</id>
<phase>compile</phase>
<goals>
<goal>index-unstable-api-annotations</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-verifier-plugin</artifactId>
<version>${version.verifier.plugin}</version>
<executions>
<execution>
<id>main</id>
<phase>verify</phase>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
<configuration>
<verificationFile>target/verifier/verifications.xml</verificationFile>
</configuration>
</plugin>
<plugin>
<groupId>org.wildfly.maven.plugins</groupId>
<artifactId>licenses-plugin</artifactId>
<version>${version.org.wildfly.licenses.plugin}</version>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<version>${version.asciidoctor.plugin}</version>
</plugin>
<plugin>
<groupId>org.wildfly.glow</groupId>
<artifactId>wildfly-glow-arquillian-plugin</artifactId>
<version>${version.org.wildfly.glow}</version>
</plugin>
<plugin>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-channel-maven-plugin</artifactId>
<version>${version.org.wildfly.wildfly-channel-plugin}</version>
<configuration>
<doNotDowngrade>true</doNotDowngrade>
<ignoreStreams>org.apache.maven:*,org.apache.maven.resolver:*,org.codehaus.plexus:*</ignoreStreams>
<injectRepositories>false</injectRepositories>
<ignorePropertiesPrefixedWith>legacy.</ignorePropertiesPrefixedWith>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<executions>
<execution>
<!-- Surefire runs a 'default-test' execution by default.
Configure it here to use a property to set the phase for that execution.
Default value of the property is the normal 'test' phase
(see 'properties' declarations in this pom.)
Profiles can set the property to 'none' to disable this execution -->
<id>default-test</id>
<phase>${surefire.default-test.phase}</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
<!-- Profiles -->
<profiles>
<profile>
<id>base.build</id>
<activation>
<property>
<name>!no.base.build</name>
</property>
</activation>
<modules>
<module>appclient</module>
<module>batch-jberet</module>
<module>bean-validation</module>
<module>boms/common-ee</module>
<module>boms/legacy-ee</module>
<module>boms/legacy-test</module>
<module>boms/standard-ee</module>
<module>boms/standard-test</module>
<module>boms/user</module>
<module>client/properties</module>
<module>client/shade</module>
<module>clustering</module>
<module>concurrency/impl-30</module>
<module>concurrency/spi</module>
<module>connector</module>
<module>datasources-agroal</module>
<module>ee</module>
<module>ee-build</module>
<module>ee-dist</module>
<module>ee-feature-pack</module>
<module>ee-security</module>
<module>ejb3</module>
<module>elytron-oidc-client</module>
<module>health</module>
<module>iiop-openjdk</module>
<module>jakarta-data</module>
<module>jaxrs</module>
<module>jdr</module>
<module>jpa</module>
<module>jsf</module>
<module>mail</module>
<module>legacy/jsr77</module>
<module>legacy/keycloak</module>
<module>legacy/picketlink</module>
<module>legacy/security</module>
<module>metrics</module>
<module>messaging-activemq</module>
<module>mod_cluster</module>
<module>naming</module>
<module>pojo</module>
<module>rts</module>
<module>sar</module>
<module>system-jmx</module>
<module>spec-api</module>
<module>weld</module>
<module>transactions</module>
<module>undertow</module>
<module>webservices</module>
<module>web-common</module>
<module>xts</module>
<module>testsuite/shared</module>
<module>testsuite</module>
</modules>
</profile>
<profile>
<id>expansion-build</id>
<activation>
<property>
<!-- Allow users to disable building expansion stuff if they just want base artifacts -->
<name>!no.expansion.build</name>
</property>
</activation>
<modules>
<module>boms/common-expansion</module>
<module>boms/legacy-expansion</module>
<module>boms/standard-expansion</module>
<module>boms/standard-test-expansion</module>
<module>boms/user</module>
<module>build</module>
<module>dist</module>
<module>galleon-pack</module>
<module>legacy/opentracing-extension</module>
<module>microprofile</module>
<module>observability</module>
<module>release</module>
<module>testsuite</module>
</modules>
</profile>
<profile>
<id>quick-build</id>
<activation>
<property>
<name>quickly</name>
</property>
</activation>
<properties>
<skipTests>true</skipTests>
<skipITs>true</skipITs>
<maven.javadoc.skip>true</maven.javadoc.skip>
<checkstyle.skip>true</checkstyle.skip>
<enforcer.skip>true</enforcer.skip>
<license.skip>true</license.skip>
</properties>
<build>
<defaultGoal>clean install</defaultGoal>
</build>
</profile>
<profile>
<id>preview-build</id>
<activation>
<property>
<name>!no.preview.build</name>
</property>
</activation>
<modules>
<module>boms/preview-ee</module>
<module>boms/preview-test</module>
<module>boms/preview-expansion</module>
<module>boms/preview-test-expansion</module>
<module>concurrency/impl-31</module>
<module>preview</module>
</modules>
</profile>
<profile>
<id>jdk23</id>
<activation>
<jdk>[23,)</jdk>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgs combine.children="append">
<!-- SE 23+ requires explicit config to turn on annotation processing -->
<arg>-proc:full</arg>
</compilerArgs>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>docs</id>
<activation>
<property>
<name>docs</name>
</property>
</activation>
<modules>
<module>docs</module>
</modules>
</profile>
<profile>
<id>dependency-check</id>
<activation>
<property>
<name>dependency-check</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<version>${version.org.owasp.dependency-check}</version>
<configuration>
<nvdApiServerId>nvd</nvdApiServerId>
<ossIndexServerId>oss-index</ossIndexServerId>
<suppressionFile>./sca-overrides/owasp-suppressions.xml</suppressionFile>
</configuration>
<executions>
<execution>
<goals>
<goal>aggregate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>jpda</id>
<activation>
<property>
<name>jpda</name>
</property>
</activation>
<properties>
<surefire.jpda.args>-agentlib:jdwp=transport=dt_socket,address=*:8787,server=y,suspend=y</surefire.jpda.args>
</properties>
</profile>
<profile>
<!-- Use the latest version of the standard channels when provisioning. -->
<id>latest.standard.channels.profile</id>
<activation><property><name>latest.standard.channels</name></property></activation>
<properties>
<!-- Allow online provisioning so wildfly-maven-plugin can resolve the latest manifests -->
<galleon.offline>false</galleon.offline>
<!-- The wildfly-maven-plugin 'provision' mojo will provision using a channel
if a wildfly.channels pom property is set.
Here we don't specify the channel version, so wildfly-maven-plugin will use the latest.
(See 'internal.channel.profile' where we specify the version.)
-->
<wildfly.channels>${channels.maven.groupId}:${channels.maven.artifactId}</wildfly.channels>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>${version.org.wildfly.plugin}</version>
<configuration>
<channels>
<channel>
<manifest>
<groupId>${channels.maven.groupId}</groupId>
<artifactId>wildfly-ee</artifactId>
</manifest>
</channel>
<channel>
<manifest>
<groupId>${channels.maven.groupId}</groupId>
<artifactId>wildfly</artifactId>
</manifest>
</channel>
</channels>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!-- Use the channels specified by the user-provided external.wildfly.channels property
when provisioning. -->
<id>external.channel.profile</id>
<activation><property><name>external.wildfly.channels</name></property></activation>
<properties>
<!-- The wildfly-maven-plugin 'provision' mojo will provision using a channel
if a wildfly.channels pom property is set.
Note the user could just directly do -Dwildfly-channels=xxx and get
the same effect, but we use this indirection to leave open the possibility
to have other ways of setting the property, without having to deal with
users having learned to directly use -Dwildfly.channels.
-->
<wildfly.channels>${external.wildfly.channels}</wildfly.channels>
</properties>
</profile>
<profile>
<!-- Use the internally-created channel when provisioning -->
<id>internal.channel.profile</id>
<activation><property><name>internal.wildfly.channels</name></property></activation>
<properties>
<!-- The wildfly-maven-plugin 'provision' mojo will provision using a channel
if a wildfly.channels pom property is set.
Here we fully specify the channel GAV. The value of ${channels.maven.version}
is expected to be the project.version of the relevant feature pack being
built during this build.
-->
<wildfly.channels>${channels.maven.groupId}:${channels.maven.artifactId}:${channels.maven.version}</wildfly.channels>
</properties>
</profile>
<profile>
<id>preview.server.test</id>
<activation>
<property>
<name>preview-server-tests</name>
</property>
</activation>
<properties>
<wildfly.build.output.dir>preview/build/target/${server.output.dir.prefix}-preview-${server.output.dir.version}</wildfly.build.output.dir>
<testsuite.ee.galleon.pack.artifactId>wildfly-preview-feature-pack</testsuite.ee.galleon.pack.artifactId>
<testsuite.full.galleon.pack.artifactId>wildfly-preview-feature-pack</testsuite.full.galleon.pack.artifactId>
<testsuite.test.feature.pack.artifactId>wildfly-test-feature-pack-preview</testsuite.test.feature.pack.artifactId>
</properties>
</profile>
<profile>
<id>preview.test.profile</id>
<activation>
<property>
<name>ts.preview</name>
</property>
</activation>
<properties>
<!-- If we are using channel-driven provisioning, use the wildfly-preview channel -->
<channel.maven.artifactId>wildfly-preview</channel.maven.artifactId>
<!-- Disable the surefire tests (at least the default ones) for all modules except for
those where this profile turns them back on. -->
<surefire.default-test.phase>none</surefire.default-test.phase>
</properties>
</profile>
<profile>
<id>bootable.preview.test.profile</id>
<activation>
<property>
<name>ts.bootable.preview</name>
</property>
</activation>
<properties>
<!-- Disable the default surefire test execution for all modules except for
those where this profile turns them back on. -->
<surefire.default-test.phase>none</surefire.default-test.phase>
</properties>
</profile>
<profile>
<id>layers.profile</id>
<activation>
<property>
<name>ts.layers</name>
</property>
</activation>
<properties>
<!-- Disable the default surefire test execution for all modules except for
those where this profile turns them back on. -->
<surefire.default-test.phase>none</surefire.default-test.phase>
</properties>
</profile>
<profile>
<id>standalone.microprofile.profile</id>
<activation>
<property>
<name>ts.standalone.microprofile</name>
</property>
</activation>
<properties>
<!-- Disable the default surefire test execution for all modules except for
those where this profile turns them back on. -->
<surefire.default-test.phase>none</surefire.default-test.phase>
</properties>
</profile>
<profile>
<id>security.manager.profile</id>
<activation>
<property>
<name>security.manager</name>
</property>
</activation>
<properties>
<!-- Disable the default surefire tests for all modules except for
those where this profile turns them on. -->
<surefire.default-test.phase>none</surefire.default-test.phase>
</properties>
</profile>
<profile>
<id>bootablejar.profile</id>
<activation>
<property>
<name>ts.bootable</name>
</property>
</activation>
<properties>
<!-- Disable the default surefire test execution for all modules except for
those where this profile turns them back on. -->
<surefire.default-test.phase>none</surefire.default-test.phase>
</properties>
</profile>
<!-- JaCoCo test coverage. Will set ${surefire.jacoco.args} to be used in Arquillian config and as surefire jvm argument. -->
<profile>
<id>ts.jacoco.profile</id>
<activation>
<property>
<name>coverage</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${version.org.jacoco}</version>
<executions>
<execution>
<id>ts.jacoco-prepare</id>
<phase>process-test-classes</phase>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<append>true</append>
<destFile>target/jacoco.exec</destFile>
<includes>
<include>*</include>
</includes>
<excludes>
<exclude>org.jboss.as.test.*</exclude>
</excludes>
<output>file</output>
<propertyName>surefire.jacoco.args</propertyName>
</configuration>
</execution>
</executions>
</plugin>
<!-- Ant plugin. -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<!-- DEBUG -->
<execution>
<id>ts.jacoco.debug</id>
<phase>post-integration-test</phase>
<goals>
<goal>run</goal>
</goals>
<inherited>false</inherited>
<configuration>
<target>
<echo>Jacoco jvm args: ${surefire.jacoco.args}</echo>
</target>
</configuration>
</execution>
<!-- Must be run using Ant due to https://sourceforge.net/tracker/?func=detail&aid=3474708&group_id=177969&atid=883354 -->
<!-- mvn antrun:run@ts.jacoco.report-ant -Dcoverage -Dtarget=report -Djboss.dist=$JBOSS_DIST -->
<execution>
<id>ts.jacoco.report-ant</id>
<phase>none</phase>
<goals>
<goal>run</goal>
</goals>
<inherited>false</inherited>
<configuration>
<target>
<taskdef classname="org.jacoco.ant.ReportTask" name="report"></taskdef>
<echo>Creating JaCoCo test coverage reports...</echo>
<mkdir dir="${basedir}/target/coverage-report"></mkdir>
<report>
<executiondata>
<fileset dir="${basedir}">
<include name="**/target/jacoco.exec"></include>
</fileset>
</executiondata>
<structure name="WildFly project">
<classfiles>
<fileset dir="${jboss.dist}/modules">
<include name="**/*.jar"></include>
<!-- Excludes solve "Can't add different class with same name: ..." -->
<exclude name="**/openjdk-orb*.jar"></exclude>
<exclude name="**/jboss-marshalling*.jar"></exclude>
<exclude name="**/hornetq-core-client*.jar"></exclude>
<exclude name="**/jipijapa-hibernate5*.jar"></exclude>
<exclude name="**/infinispan-commons*.jar"></exclude>
<exclude name="**/jboss-logmanager*.jar"></exclude>
<exclude name="**/wildfly-common*.jar"></exclude>
<exclude name="**/wildfly-elytron*.jar"></exclude>
<exclude name="**/jaxb*.jar"></exclude>
<exclude name="**/h2-*.jar"></exclude>
<exclude name="**/snakeyaml-*.jar"></exclude>
<exclude name="**/yasson-*.jar"></exclude>
<exclude name="**/bcprov-*.jar"></exclude>
<exclude name="**/lucene-*.jar"></exclude>
<exclude name="**/log4j-api-*.jar"></exclude>
<exclude name="**/vertx-core-*.jar"></exclude>
<exclude name="**/opentelemetry-sdk-common-*.jar"></exclude>
</fileset>
</classfiles>
<sourcefiles encoding="UTF-8">
<dirset dir="${basedir}">
<include name="**/src/main/java"/>
</dirset>
</sourcefiles>
</structure>
<html destdir="${basedir}/target/coverage-report/html"></html>
<xml destfile="${basedir}/target/coverage-report/coverage-report.xml"></xml>
<csv destfile="${basedir}/target/coverage-report/coverage-report.csv"></csv>
</report>
</target>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.jacoco</groupId>
<artifactId>org.jacoco.ant</artifactId>
<version>${version.org.jacoco}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!-- surefire.jacoco.args property needs to be set correctly, if coverage profile is not enabled -->
<id>ts.jacoco.profile.not.enabled</id>
<activation>
<property>
<name>!coverage</name>
</property>
</activation>
<properties>
<surefire.jacoco.args></surefire.jacoco.args>
</properties>
</profile>
<profile>
<!-- this profile can be used to test component releases available in Nexus staging repositories -->
<id>staged-releases</id>
<properties>
<jboss.staging.repository.group>true</jboss.staging.repository.group>
</properties>
<repositories>
<repository>
<id>jboss-staging-repository-group</id>
<name>JBoss Staging Repository Group</name>
<url>${nexus.repository.staging.url}</url>
<layout>default</layout>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>jboss-staging-repository-group</id>
<name>JBoss Staging Repository Group</name>
<url>${nexus.repository.staging.url}</url>
<layout>default</layout>
</pluginRepository>
</pluginRepositories>
</profile>
<!-- Configures testsuite to use the non-default Galleon pack to provision EE content.
This profile is meant to eliminate the need to use -D to see all three parts of the GAV
in order to test provisioning using a different feature pack. -->
<profile>
<id>test.ee.galleon.pack.profile</id>
<activation>
<property>
<name>testsuite.ee.galleon.pack.artifactId</name>
<value>wildfly-ee-galleon-pack</value>
</property>
</activation>
<properties>
<testsuite.ee.galleon.pack.groupId>${ee.maven.groupId}</testsuite.ee.galleon.pack.groupId>
<testsuite.ee.galleon.pack.version>${ee.maven.version}</testsuite.ee.galleon.pack.version>
<!-- If we are using channel-driven provisioning, use the wildfly-ee channel -->
<channel.maven.artifactId>wildfly-ee</channel.maven.artifactId>
<channel.maven.version>${ee.maven.version}</channel.maven.version>
</properties>
</profile>
<!-- Disable standard compilation execution.
Intended use is when a build has been performed with one JDK
and then test executions are wanted with another JDK, and that
'test' goal shouldn't be allowed to determine that things need
recompilation. Just using the 'surefire:test' goal would have
the same effect but seems to result in profile settings being
ignored. -->
<profile>
<id>noCompile</id>
<activation>
<property>
<name>noCompile</name>
</property>
</activation>
<properties>
<!-- Allow SE 11 and later. We don't actually compile, so we just need
to be able to execute tests using supported-at-runtime SE versions -->
<required.java.build.version>[11,)</required.java.build.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<skipMain>true</skipMain>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>maven-central-release</id>
<distributionManagement>
<snapshotRepository>
<id>${sonatype.server.id}</id>
<url>${repo.sonatype.url}</url>
</snapshotRepository>
<repository>
<id>${sonatype.server.id}</id>
<url>${repo.sonatype.url}</url>
</repository>
</distributionManagement>
<build>
<plugins>
<!-- Create a source-release artifact that contains the fully buildable
project directory source structure. This should be released to
the Maven repository for each JBoss project release. -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>${version.assembly.plugin}</version>
<dependencies>
<dependency>
<groupId>org.apache.apache.resources</groupId>
<artifactId>apache-source-release-assembly-descriptor</artifactId>
<version>1.7</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>source-release-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<skipAssembly>${skipReleaseAssembly}</skipAssembly>
<runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
<descriptorRefs>
<descriptorRef>${sourceReleaseAssemblyDescriptor}</descriptorRef>
</descriptorRefs>
<tarLongFileMode>gnu</tarLongFileMode>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<executions>
<execution>
<id>default-deploy</id>
<phase>none</phase>
</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>
<executions>
<execution>
<id>gpg-sign</id>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>${version.central.publishing.maven.plugin}</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>${sonatype.server.id}</publishingServerId>
<autoPublish>${autoPublish}</autoPublish>
<waitUntil>${waitUntil}</waitUntil>
<deploymentName>wildfly-${project.version}</deploymentName>
<skipPublishing>${skipPublishing}</skipPublishing>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>