<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ JBoss, Home of Professional Open Source.
  ~ Copyright 2017, Red Hat, Inc., and individual contributors
  ~ as indicated by the @author tags. See the copyright.txt file in the
  ~ distribution for a full listing of individual contributors.
  ~
  ~ This is free software; you can redistribute it and/or modify it
  ~ under the terms of the GNU Lesser General Public License as
  ~ published by the Free Software Foundation; either version 2.1 of
  ~ the License, or (at your option) any later version.
  ~
  ~ This software is distributed in the hope that it will be useful,
  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  ~ Lesser General Public License for more details.
  ~
  ~ You should have received a copy of the GNU Lesser General Public
  ~ License along with this software; if not, write to the Free
  ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  -->
<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>39</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>27.0.1.Final</version>

    <packaging>pom</packaging>

    <name>WildFly: Parent Aggregator</name>
    <description>WildFly: Parent Aggregator</description>

    <licenses>
        <license>
            <name>GNU Lesser General Public License v2.1 or later</name>
            <url>http://repository.jboss.org/licenses/lgpl-2.1.txt</url>
            <distribution>repo</distribution>
        </license>
    </licenses>

    <modules>
        <module>appclient</module>
        <module>batch-jberet</module>
        <module>boms/common-ee</module>
        <module>boms/common-expansion</module>
        <module>boms/legacy-ee</module>
        <module>boms/legacy-expansion</module>
        <module>boms/preview-ee</module>
        <module>boms/preview-expansion</module>
        <module>boms/standard-ee</module>
        <module>boms/standard-expansion</module>
        <module>build</module>
        <module>client/properties</module>
        <module>client/shade</module>
        <module>clustering</module>
        <module>datasources-agroal</module>
        <module>dist</module>
        <module>ee-build</module>
        <module>ee-dist</module>
        <module>ee-feature-pack</module>
        <module>ee-security</module>
        <module>ee-9</module>
        <module>ejb3</module>
        <module>elytron-oidc-client</module>
        <module>galleon-pack</module>
        <module>health</module>
        <module>jaxrs</module>
        <module>jdr</module>
        <module>jpa</module>
        <module>mail</module>
        <module>legacy/jacorb</module>
        <module>legacy/jsr77</module>
        <module>legacy/keycloak</module>
        <module>legacy/messaging</module>
        <module>legacy/web</module>
        <module>metrics</module>
        <module>microprofile</module>
        <module>mod_cluster</module>
        <module>naming</module>
        <module>picketlink</module>
        <module>pojo</module>
        <module>release</module>
        <module>sar</module>
        <module>security</module>
        <module>system-jmx</module>
        <module>spec-api</module>
        <module>servlet-feature-pack</module>
        <module>weld</module>
        <module>testsuite/test-feature-pack</module>
        <module>testsuite</module>
    </modules>

    <scm>
        <connection>scm:git:${jboss.as.scm.connection}</connection>
        <developerConnection>scm:git:${jboss.as.scm.connection}</developerConnection>
        <url>${jboss.as.scm.url}</url>
    </scm>

    <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</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.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.maven.groupId>${project.groupId}</ee.maven.groupId>
        <ee.maven.version>${project.version}</ee.maven.version>
        <product.docs.server.version>27</product.docs.server.version>
        <!-- A short variant of product.release.version used in 'startsWith' tests done by dist verification logic -->
        <verifier.product.release.version>27.0</verifier.product.release.version>

        <!-- 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>
        <!-- Require Java 11 -->
        <maven.compiler.target>11</maven.compiler.target>
        <maven.compiler.source>11</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.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>
        <modular.jdk.props></modular.jdk.props>

        <!--
            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 -XX:MaxMetaspaceSize=1024m ${surefire.jpda.args} ${surefire.extra.args} ${surefire.jacoco.args}</surefire.non-modular.system.args>
        <surefire.system.args>${modular.jdk.args} ${modular.jdk.props} ${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>

        <!-- 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>

        <!-- WildFly Preview vs standard WildFly GAV expression properties.
             Used to drive maven-resource-plugin filtering for module.xml files
             where WildFly Preview and standard WildFly use different artifacts but
             otherwise identical module.xml files. The expression encapsulates the part
             of a groupId/artifactId/classifier that differs in the two dists.
             Values here are the ones used by standard WildFly; WildFly Preview child
             modules will override. Often the standard value will be an empty string
             and WildFly Preview will change it to additional text a project uses to
             identify its jakarta.* namespace artifacts.
             -->
        <!-- TODO clean this out, as these strings no longer differ between WF and WFP -->
        <module.jakarta.classifier>::jakarta</module.jakarta.classifier>
        <module.jakarta.suffix>-jakarta</module.jakarta.suffix>
        <module.jms.suffix>jakarta</module.jms.suffix>

        <!-- 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>

        <!--
            *Plugin* Dependency versions. Please keep alphabetical.

            Properties for dependencies that are not *solely* related to plugins go in the next section.

            This is not limited to plugin versions. Other artifacts that those plugins depend upon can go here
            if they are not otherwise used.

            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.
         -->
        <version.asciidoctor.plugin>2.2.2</version.asciidoctor.plugin>
        <version.org.jacoco>0.8.7</version.org.jacoco>
        <version.org.jboss.galleon>5.0.5.Final</version.org.jboss.galleon>
        <version.org.wildfly.build-tools>1.2.12.Final</version.org.wildfly.build-tools>
        <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>6.2.0.Final</version.org.wildfly.galleon-plugins>
        <version.org.wildfly.jar.plugin>8.1.0.Final</version.org.wildfly.jar.plugin>
        <version.org.wildfly.maven.plugins>2.2.0.Final</version.org.wildfly.maven.plugins>
        <version.org.wildfly.plugin>3.0.2.Final</version.org.wildfly.plugin>
        <version.verifier.plugin>1.1</version.verifier.plugin>
        <version.xml.plugin>1.0.1</version.xml.plugin>


        <!--
            *Non-plugin* Dependency versions. Please keep alphabetical.

            Properties for dependencies that solely relate to maven plugins go in the section above.

            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.
            For example: <version.org.jboss.hal.release-stream>
            to sort automatically use
             mvn com.github.ekryd.sortpom:sortpom-maven-plugin:2.8.0:sort -Dsort.sortProperties=true -Dsort.nrOfIndentSpace=4 -Dsort.keepBlankLines=true -Dsort.sortDependencies=scope,groupId,artifactId

            For properties only used for building legacy modules not used in standard WildFly or WildFly Preview, prefix the property name with 'legacy.'
            Place the property in the proper alphabetical location as if the 'legacy.' was not present. In the typical case where there's also the same
            property without 'legacy.', put the legacy property first.
         -->
        <legacy.version.antlr>2.7.7</legacy.version.antlr>
        <version.antlr>4.10</version.antlr>
        <version.com.amazon.aws>1.12.284</version.com.amazon.aws>
        <version.com.amazon.ion>1.0.2</version.com.amazon.ion>
        <version.com.beust>1.78</version.com.beust>
        <version.com.carrotsearch.hppc>0.8.1</version.com.carrotsearch.hppc>
        <version.org.elasticsearch.client.rest-client>7.16.3</version.org.elasticsearch.client.rest-client>
        <version.com.fasterxml.classmate>1.5.1</version.com.fasterxml.classmate>
        <version.com.fasterxml.jackson>2.13.4</version.com.fasterxml.jackson>
        <version.com.fasterxml.jackson.databind>${version.com.fasterxml.jackson}.2</version.com.fasterxml.jackson.databind>
        <version.com.fasterxml.jackson.jr.jackson-jr-objects>${version.com.fasterxml.jackson}</version.com.fasterxml.jackson.jr.jackson-jr-objects>
        <version.com.github.ben-manes.caffeine>3.1.1</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.tomakehurst.wiremock>2.27.2</version.com.github.tomakehurst.wiremock>
        <version.com.google.android.annotations>4.1.1.4</version.com.google.android.annotations>
        <version.com.google.api.grpc>2.0.1</version.com.google.api.grpc>
        <version.com.google.code.gson>2.8.9</version.com.google.code.gson>
        <version.com.google.guava>31.1-jre</version.com.google.guava>
        <version.com.google.guava.failureaccess>1.0.1</version.com.google.guava.failureaccess>
        <version.com.google.j2objc>1.3</version.com.google.j2objc>
        <version.com.google.protobuf>3.19.6</version.com.google.protobuf>
        <version.com.h2database>2.1.210</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>9.23</version.com.nimbus.jose-jwt>
        <legacy.version.com.squareup.okhttp>3.14.9</legacy.version.com.squareup.okhttp>
        <version.com.squareup.okhttp>4.10.0</version.com.squareup.okhttp>
        <version.com.squareup.okio-jvm>3.2.0</version.com.squareup.okio-jvm>
        <legacy.version.com.sun.activation.jakarta.activation>1.2.2</legacy.version.com.sun.activation.jakarta.activation>
        <legacy.version.com.sun.faces>2.3.17.SP01</legacy.version.com.sun.faces>
        <version.com.sun.faces>4.0.0.SP01</version.com.sun.faces>
        <version.com.sun.istack>4.1.1</version.com.sun.istack>
        <version.com.sun.xml.fastinfoset>2.1.0</version.com.sun.xml.fastinfoset>
        <version.com.sun.xml.messaging.saaj>3.0.0</version.com.sun.xml.messaging.saaj>
        <version.commons-beanutils>1.9.4</version.commons-beanutils>
        <version.commons-codec>1.15</version.commons-codec>
        <version.commons-collections>3.2.2</version.commons-collections>
        <version.commons-digester>1.8.1</version.commons-digester>
        <version.commons-io>2.11.0</version.commons-io>
        <version.dom4j>2.1.3</version.dom4j>
        <version.gnu.getopt>1.0.13</version.gnu.getopt>
        <version.groovy-all>4.0.4</version.groovy-all>
        <version.httpunit>1.7.2</version.httpunit>
        <version.io.agroal>2.0</version.io.agroal>
        <version.io.grpc>1.38.1</version.io.grpc>
        <version.io.jaegertracing>1.6.0</version.io.jaegertracing>
        <version.io.micrometer>1.9.3</version.io.micrometer>
        <version.io.netty>4.1.84.Final</version.io.netty>
        <version.io.opentelemetry.opentelemetry>1.12.0</version.io.opentelemetry.opentelemetry>
        <version.io.opentracing>0.33.0</version.io.opentracing>
        <version.io.opentracing.concurrent>0.4.0</version.io.opentracing.concurrent>
        <version.io.opentracing.interceptors>0.1.3</version.io.opentracing.interceptors>
        <version.io.opentracing.jaxrs2>1.0.0</version.io.opentracing.jaxrs2>
        <legacy.version.io.opentracing.tracerresolver>0.1.8</legacy.version.io.opentracing.tracerresolver>
        <version.io.opentracing.servlet>0.2.3</version.io.opentracing.servlet>
        <version.io.perfmark>0.23.0</version.io.perfmark>
        <version.io.prometheus>0.16.0</version.io.prometheus>
        <version.io.reactivex.rxjava2>2.2.21</version.io.reactivex.rxjava2>
        <version.io.reactivex.rxjava3>3.1.5</version.io.reactivex.rxjava3>
        <version.io.rest-assured>3.0.6</version.io.rest-assured>
        <version.io.smallrye.open-api>3.0.1</version.io.smallrye.open-api>
        <legacy.version.io.smallrye.opentracing>2.0.0</legacy.version.io.smallrye.opentracing>
        <version.io.smallrye.reactive-utils>2.6.0</version.io.smallrye.reactive-utils>
        <legacy.version.io.smallrye.smallrye-common>1.13.0</legacy.version.io.smallrye.smallrye-common>
        <version.io.smallrye.smallrye-common>2.0.0</version.io.smallrye.smallrye-common>
        <legacy.version.io.smallrye.smallrye-config>2.10.1</legacy.version.io.smallrye.smallrye-config>
        <version.io.smallrye.smallrye-config>3.0.0</version.io.smallrye.smallrye-config>
        <version.io.smallrye.smallrye-fault-tolerance>6.0.0</version.io.smallrye.smallrye-fault-tolerance>
        <legacy.version.io.smallrye.smallrye-health>3.3.0</legacy.version.io.smallrye.smallrye-health>
        <version.io.smallrye.smallrye-health>4.0.0</version.io.smallrye.smallrye-health>
        <legacy.version.io.smallrye.smallrye-jwt>3.1.1</legacy.version.io.smallrye.smallrye-jwt>
        <version.io.smallrye.smallrye-jwt>4.0.0</version.io.smallrye.smallrye-jwt>
        <legacy.version.io.smallrye.smallrye-metrics>3.0.4</legacy.version.io.smallrye.smallrye-metrics>
        <version.io.smallrye.smallrye-metrics>4.0.0</version.io.smallrye.smallrye-metrics>
        <version.io.smallrye.smallrye-mutiny>1.7.0</version.io.smallrye.smallrye-mutiny>
        <version.io.smallrye.smallrye-mutiny-vertx>2.26.0</version.io.smallrye.smallrye-mutiny-vertx>
        <version.io.smallrye.smallrye-opentracing>3.0.0</version.io.smallrye.smallrye-opentracing>
        <version.io.smallrye.smallrye-reactive-messaging>4.0.0</version.io.smallrye.smallrye-reactive-messaging>
        <legacy.version.io.undertow>2.2.20.Final</legacy.version.io.undertow>
        <legacy.version.io.undertow.jastow>2.0.12.Final</legacy.version.io.undertow.jastow>
        <version.io.undertow.jastow>2.2.4.Final</version.io.undertow.jastow>
        <version.io.vertx.vertx>4.3.4</version.io.vertx.vertx>
        <version.io.vertx.vertx-kafka-client>${version.io.vertx.vertx}</version.io.vertx.vertx-kafka-client>
        <version.jakarta.activation.jakarta.activation-api>2.1.1.jbossorg-1</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.ejb.jakarta-ejb-api>4.0.1</version.jakarta.ejb.jakarta-ejb-api>
        <version.jakarta.el.jakarta-el-api>5.0.0</version.jakarta.el.jakarta-el-api>
        <version.jakarta.enterprise.concurrent.jakarta-enterprise.concurrent-api>3.0.0</version.jakarta.enterprise.concurrent.jakarta-enterprise.concurrent-api>
        <legacy.version.jakarta.enterprise>2.0.2</legacy.version.jakarta.enterprise>
        <version.jakarta.enterprise>4.0.0</version.jakarta.enterprise>
        <version.jakarta.faces.jakarta-faces-api>4.0.1</version.jakarta.faces.jakarta-faces-api>
        <legacy.version.jakarta.inject.jakarta.inject-api>1.0.5</legacy.version.jakarta.inject.jakarta.inject-api>
        <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.0</version.jakarta.json.bind.api>
        <legacy.version.jakarta.json.jakarta-json-api>1.1.6</legacy.version.jakarta.json.jakarta-json-api>
        <legacy.version.jakarta.jws.jakarta.jws-api>2.1.0</legacy.version.jakarta.jws.jakarta.jws-api>
        <legacy.version.jakarta.mail>1.6.7</legacy.version.jakarta.mail>
        <version.jakarta.mail-api>2.1.1.jbossorg-1</version.jakarta.mail-api>
        <legacy.version.jakarta.persistence>2.2.3</legacy.version.jakarta.persistence>
        <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.0</version.jakarta.servlet.jsp.jakarta-servlet-jsp-api>
        <version.jakarta.servlet.jsp.jstl.jakarta-servlet-jsp-jstl-api>3.0.0</version.jakarta.servlet.jsp.jstl.jakarta-servlet-jsp-jstl-api>
        <legacy.version.jakarta.transaction>2.0.1</legacy.version.jakarta.transaction>
        <version.jakarta.transaction.jakarta-transaction-api>2.0.1</version.jakarta.transaction.jakarta-transaction-api>
        <version.jakarta.validation>2.0.2</version.jakarta.validation>
        <version.jakarta.validation.jakarta-validation-api>3.0.2</version.jakarta.validation.jakarta-validation-api>
        <version.jakarta.websocket.jakarta-websocket-api>2.1.0-jbossorg-2</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.0</version.jakarta.xml.bind.jakarta-xml-bind-api>
        <version.javax.jws.jsr181-api>1.0-MR1</version.javax.jws.jsr181-api>
        <version.jaxen>1.1.6</version.jaxen>
        <version.jboss.jaxbintros>2.0.0</version.jboss.jaxbintros>
        <version.joda-time>2.11.2</version.joda-time>
        <version.jsoup>1.15.3</version.jsoup>
        <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.26.0</version.org.apache.activemq.artemis>
        <version.org.apache.activemq.artemis.native>1.0.2</version.org.apache.activemq.artemis.native>
        <version.org.apache.avro>1.11.0</version.org.apache.avro>
        <version.org.apache.cxf>3.5.2-jbossorg-4</version.org.apache.cxf>
        <version.org.apache.cxf.xjcplugins>4.0.0</version.org.apache.cxf.xjcplugins>
        <version.org.apache.ds>2.0.0.AM26</version.org.apache.ds>
        <version.org.apache.httpcomponents.httpasyncclient>4.1.5</version.org.apache.httpcomponents.httpasyncclient>
        <version.org.apache.james.apache-mime4j>0.8.7</version.org.apache.james.apache-mime4j>
        <version.org.apache.jstl>1.2.6-RC1</version.org.apache.jstl>
        <version.org.apache.kafka>3.2.2</version.org.apache.kafka>
        <version.org.apache.lucene>8.11.1</version.org.apache.lucene>
        <legacy.version.org.apache.myfaces.core>2.3.10</legacy.version.org.apache.myfaces.core>
        <version.org.apache.myfaces.core>3.0.2</version.org.apache.myfaces.core>
        <version.org.apache.neethi>3.1.1</version.org.apache.neethi>
        <version.org.apache.openjpa>3.1.2</version.org.apache.openjpa>
        <version.org.apache.qpid.proton>0.34.0</version.org.apache.qpid.proton>
        <version.org.apache.santuario>3.0.0</version.org.apache.santuario>
        <version.org.apache.thrift>0.14.1</version.org.apache.thrift>
        <version.org.apache.velocity>2.3</version.org.apache.velocity>
        <version.org.apache.wss4j>2.4.1-jbossorg-1</version.org.apache.wss4j>
        <version.org.apache.ws.xmlschema>2.3.0</version.org.apache.ws.xmlschema>
        <version.org.apache.xerces>2.12.0.SP05</version.org.apache.xerces>
        <version.org.awaitility.awaitility>4.0.2</version.org.awaitility.awaitility>
        <version.org.bitbucket.jose4j>0.8.0</version.org.bitbucket.jose4j>
        <version.org.bytebuddy>1.12.18</version.org.bytebuddy>
        <version.org.cryptacular>1.2.5</version.org.cryptacular>
        <version.org.codehaus.woodstox.stax2-api>4.2.1</version.org.codehaus.woodstox.stax2-api>
        <version.org.codehaus.woodstox.woodstox-core>6.4.0</version.org.codehaus.woodstox.woodstox-core>
        <version.org.eclipse.angus.angus-activation>1.0.0</version.org.eclipse.angus.angus-activation>
        <version.org.eclipse.angus.angus-mail>1.0.0</version.org.eclipse.angus.angus-mail>
        <version.org.eclipse.jdt>3.31.0</version.org.eclipse.jdt>
        <!-- Required by the Wiremock used in the MicroProfile REST Client TCK -->
        <version.org.eclipse.jetty>9.2.30.v20200428</version.org.eclipse.jetty>
        <version.org.eclipse.microprofile>4.1</version.org.eclipse.microprofile>
        <legacy.version.org.eclipse.microprofile.config.api>2.0</legacy.version.org.eclipse.microprofile.config.api>
        <version.org.eclipse.microprofile.config.api>3.0.1</version.org.eclipse.microprofile.config.api>
        <version.org.eclipse.microprofile.fault-tolerance.api>4.0.2</version.org.eclipse.microprofile.fault-tolerance.api>
        <legacy.version.org.eclipse.microprofile.health.api>3.1</legacy.version.org.eclipse.microprofile.health.api>
        <version.org.eclipse.microprofile.health.api>4.0</version.org.eclipse.microprofile.health.api>
        <legacy.version.org.eclipse.microprofile.jwt.api>1.2.1</legacy.version.org.eclipse.microprofile.jwt.api>
        <version.org.eclipse.microprofile.jwt.api>2.0</version.org.eclipse.microprofile.jwt.api>
        <legacy.version.org.eclipse.microprofile.metrics.api>3.0</legacy.version.org.eclipse.microprofile.metrics.api>
        <version.org.eclipse.microprofile.metrics.api>4.0</version.org.eclipse.microprofile.metrics.api>
        <version.org.eclipse.microprofile.openapi>3.0</version.org.eclipse.microprofile.openapi>
        <legacy.version.org.eclipse.microprofile.opentracing>2.0</legacy.version.org.eclipse.microprofile.opentracing>
        <version.org.eclipse.microprofile.opentracing>3.0</version.org.eclipse.microprofile.opentracing>
        <legacy.version.org.eclipse.microprofile.reactive-messaging.api>2.0.1</legacy.version.org.eclipse.microprofile.reactive-messaging.api>
        <version.org.eclipse.microprofile.reactive-messaging.api>3.0</version.org.eclipse.microprofile.reactive-messaging.api>
        <legacy.version.org.eclipse.microprofile.reactive-streams-operators.api>2.0</legacy.version.org.eclipse.microprofile.reactive-streams-operators.api>
        <version.org.eclipse.microprofile.reactive-streams-operators.api>3.0</version.org.eclipse.microprofile.reactive-streams-operators.api>
        <legacy.version.org.eclipse.microprofile.rest.client.api>2.0</legacy.version.org.eclipse.microprofile.rest.client.api>
        <version.org.eclipse.microprofile.rest.client.api>3.0</version.org.eclipse.microprofile.rest.client.api>
        <version.org.eclipse.yasson>3.0.1</version.org.eclipse.yasson>
        <legacy.version.org.eclipse.persistence.eclipselink>2.7.11</legacy.version.org.eclipse.persistence.eclipselink>
        <version.org.eclipse.persistence.eclipselink>3.0.3</version.org.eclipse.persistence.eclipselink>
        <version.org.glassfish.expressly>5.0.0</version.org.glassfish.expressly>
        <legacy.version.org.glassfish.jakarta.el>3.0.3.jbossorg-4</legacy.version.org.glassfish.jakarta.el>
        <legacy.version.org.glassfish.jakarta.enterprise.concurrent>1.1.1</legacy.version.org.glassfish.jakarta.enterprise.concurrent>
        <version.org.glassfish.jakarta.enterprise.concurrent>3.0.0</version.org.glassfish.jakarta.enterprise.concurrent>
        <!-- WFLY-14723 For XJC we use a jbossorg variant in WF. Use the version expression from the root
         pom here so we detect if the base version changes there and we didn't do a -jbossorg of that version -->
        <version.org.glassfish.jaxb>4.0.1</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.0</version.org.glassfish.soteria>
        <version.org.glassfish.web.jakarta.servlet.jsp.jstl>3.0.0</version.org.glassfish.web.jakarta.servlet.jsp.jstl>
        <version.org.hamcrest>1.3</version.org.hamcrest>
        <version.org.hamcrest.java-hamcrest>2.0.0.0</version.org.hamcrest.java-hamcrest>
        <version.org.hibernate>6.1.5.Final</version.org.hibernate>
        <legacy.version.org.hibernate.commons.annotations>5.0.5.Final</legacy.version.org.hibernate.commons.annotations>
        <version.org.hibernate.commons.annotations>6.0.1.Final</version.org.hibernate.commons.annotations>
        <version.org.hibernate.search>6.1.7.Final</version.org.hibernate.search>
        <legacy.version.org.hibernate.validator>6.0.23.Final</legacy.version.org.hibernate.validator>
        <version.org.hibernate.validator>8.0.0.Final</version.org.hibernate.validator>
        <version.org.hornetq>2.4.9.Final</version.org.hornetq>
        <version.org.infinispan>14.0.2.Final</version.org.infinispan>
        <version.org.infinispan.protostream>4.5.0.Final</version.org.infinispan.protostream>
        <version.org.jasypt>1.9.3</version.org.jasypt>
        <version.org.javassist>3.27.0-GA</version.org.javassist>
        <version.org.jberet>2.1.1.Final</version.org.jberet>
        <version.org.jboss.activemq.artemis.integration>1.0.7</version.org.jboss.activemq.artemis.integration>
        <version.org.jboss.arquillian.core>1.7.0.Alpha12</version.org.jboss.arquillian.core>
        <version.org.jboss.common.jboss-common-beans>2.0.1.Final</version.org.jboss.common.jboss-common-beans>
        <legacy.version.org.jboss.ejb-client>4.0.49.Final</legacy.version.org.jboss.ejb-client>
        <version.org.jboss.ejb-client>5.0.1.Final</version.org.jboss.ejb-client>
        <version.org.jboss.ejb-client-legacy>3.0.3.Final</version.org.jboss.ejb-client-legacy>
        <version.org.jboss.ejb3.ext-api>2.3.0.Final</version.org.jboss.ejb3.ext-api>
        <version.org.jboss.genericjms>2.0.10.Final</version.org.jboss.genericjms>
        <version.org.jboss.hal.console>3.6.5.Final</version.org.jboss.hal.console>
        <version.org.jboss.iiop-client>1.0.2.Final</version.org.jboss.iiop-client>
        <version.org.jboss.invocation>1.7.0.Final</version.org.jboss.invocation>
        <version.org.jboss.ironjacamar>1.5.9.Final</version.org.jboss.ironjacamar>
        <version.org.jboss.jboss-transaction-spi>7.6.1.Final</version.org.jboss.jboss-transaction-spi>
        <!-- Only used for testing -->
        <version.org.jboss.logmanager.commons-logging-jboss-logmanager>1.0.3.Final</version.org.jboss.logmanager.commons-logging-jboss-logmanager>
        <version.org.jboss.metadata>15.2.0.Final</version.org.jboss.metadata>
        <version.org.jboss.mod_cluster>2.0.1.Final</version.org.jboss.mod_cluster>
        <version.org.jboss.narayana>5.13.0.Final</version.org.jboss.narayana>
        <version.org.jboss.openjdk-orb>8.1.9.Final</version.org.jboss.openjdk-orb>
        <legacy.version.org.jboss.resteasy>4.7.4.Final</legacy.version.org.jboss.resteasy>
        <version.org.jboss.resteasy>6.2.1.Final</version.org.jboss.resteasy>
        <version.org.jboss.resteasy.microprofile>2.0.0.Final</version.org.jboss.resteasy.microprofile>
        <version.org.jboss.resteasy.spring>3.0.0.Final</version.org.jboss.resteasy.spring>
        <version.org.jboss.seam.int>7.0.0.GA</version.org.jboss.seam.int>
        <!-- only needed here until wildfly-arquillian has this version properly synced with arquillian itslef  -->
        <version.org.jboss.shrinkwrap.descriptors>2.0.0</version.org.jboss.shrinkwrap.descriptors>
        <version.org.jboss.shrinkwrap.shrinkwrap>1.2.6</version.org.jboss.shrinkwrap.shrinkwrap>
        <!-- Include the artifactId for org.jboss.spec project versions because artifactId contains the API spec version -->
        <version.org.jboss.spec.jakarta.el.jboss-el-api_5.0_spec>4.0.0.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.spec.javax.annotation.jboss-annotations-api_1.3_spec>2.0.1.Final</version.org.jboss.spec.javax.annotation.jboss-annotations-api_1.3_spec>
        <version.org.jboss.spec.javax.ejb.jboss-ejb-api_3.2_spec>2.0.0.Final</version.org.jboss.spec.javax.ejb.jboss-ejb-api_3.2_spec>
        <version.org.jboss.spec.javax.el.jboss-el-api_3.0_spec>2.0.0.Final</version.org.jboss.spec.javax.el.jboss-el-api_3.0_spec>
        <version.org.jboss.spec.javax.enterprise.concurrent.jboss-concurrency-api_1.0_spec>2.0.0.Final</version.org.jboss.spec.javax.enterprise.concurrent.jboss-concurrency-api_1.0_spec>
        <version.org.jboss.spec.javax.interceptor.jboss-interceptors-api_1.2_spec>2.0.0.Final</version.org.jboss.spec.javax.interceptor.jboss-interceptors-api_1.2_spec>
        <version.org.jboss.spec.javax.faces.jboss-jsf-api_2.3_spec>3.1.0.SP02</version.org.jboss.spec.javax.faces.jboss-jsf-api_2.3_spec>
        <legacy.version.org.jboss.spec.javax.interceptor.jboss-interceptors-api_1.2_spec>2.0.0.Final</legacy.version.org.jboss.spec.javax.interceptor.jboss-interceptors-api_1.2_spec>
        <version.org.jboss.spec.javax.jms.jboss-jms-api_2.0_spec>2.0.0.Final</version.org.jboss.spec.javax.jms.jboss-jms-api_2.0_spec>
        <version.org.jboss.spec.javax.management.j2ee.jboss-j2eemgmt-api_1.1_spec>2.0.0.Final</version.org.jboss.spec.javax.management.j2ee.jboss-j2eemgmt-api_1.1_spec>
        <version.org.jboss.spec.javax.resource.jboss-connector-api_1.7_spec>2.0.0.Final</version.org.jboss.spec.javax.resource.jboss-connector-api_1.7_spec>
        <legacy.version.org.jboss.spec.javax.security.jacc.jboss-jacc-api_1.5_spec>2.0.0.Final</legacy.version.org.jboss.spec.javax.security.jacc.jboss-jacc-api_1.5_spec>
        <legacy.version.org.jboss.spec.javax.security.auth.message.jboss-jaspi-api_1.1_spec>2.0.1.Final</legacy.version.org.jboss.spec.javax.security.auth.message.jboss-jaspi-api_1.1_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.jboss.spec.javax.servlet.jsp.jboss-jsp-api_2.3_spec>2.0.0.Final</version.org.jboss.spec.javax.servlet.jsp.jboss-jsp-api_2.3_spec>
        <version.org.jboss.spec.javax.transaction.jboss-transaction-api_1.3_spec>2.0.0.Final</version.org.jboss.spec.javax.transaction.jboss-transaction-api_1.3_spec>
        <version.org.jboss.spec.javax.websockets>2.0.0.Final</version.org.jboss.spec.javax.websockets>
        <version.org.jboss.spec.javax.ws.jboss-jaxrs-api_2.1_spec>2.0.2.Final</version.org.jboss.spec.javax.ws.jboss-jaxrs-api_2.1_spec>
        <version.org.jboss.spec.javax.xml.bind.jboss-jaxb-api_2.3_spec>2.0.1.Final</version.org.jboss.spec.javax.xml.bind.jboss-jaxb-api_2.3_spec>
        <version.org.jboss.spec.javax.xml.rpc.jboss-jaxrpc-api_1.1_spec>2.0.0.Final</version.org.jboss.spec.javax.xml.rpc.jboss-jaxrpc-api_1.1_spec>
        <version.org.jboss.spec.javax.xml.soap.jboss-saaj-api_1.4_spec>1.0.2.Final</version.org.jboss.spec.javax.xml.soap.jboss-saaj-api_1.4_spec>
        <version.org.jboss.spec.javax.xml.ws.jboss-jaxws-api_2.3_spec>2.0.0.Final</version.org.jboss.spec.javax.xml.ws.jboss-jaxws-api_2.3_spec>
        <legacy.version.org.jboss.weld.weld>3.1.9.Final</legacy.version.org.jboss.weld.weld>
        <version.org.jboss.weld.weld>5.1.0.Final</version.org.jboss.weld.weld>
        <legacy.version.org.jboss.weld.weld-api>3.1.SP4</legacy.version.org.jboss.weld.weld-api>
        <version.org.jboss.weld.weld-api>5.0.SP3</version.org.jboss.weld.weld-api>
        <legacy.version.org.jboss.ws.api>1.1.2.Final</legacy.version.org.jboss.ws.api>
        <version.org.jboss.ws.api>2.0.0.Final</version.org.jboss.ws.api>
        <legacy.version.org.jboss.ws.common>3.3.3.Final</legacy.version.org.jboss.ws.common>
        <version.org.jboss.ws.common>4.0.0.Final</version.org.jboss.ws.common>
        <version.org.jboss.ws.common.tools>1.4.0.Final</version.org.jboss.ws.common.tools>
        <version.org.jboss.ws.cxf>6.1.0.Final</version.org.jboss.ws.cxf>
        <version.org.jboss.ws.jaxws-undertow-httpspi>2.0.0.Final</version.org.jboss.ws.jaxws-undertow-httpspi>
        <legacy.version.org.jboss.ws.spi>3.4.0.Final</legacy.version.org.jboss.ws.spi>
        <version.org.jboss.ws.spi>4.1.0.Final</version.org.jboss.ws.spi>
        <version.org.jboss.xnio.netty.netty-xnio-transport>0.1.9.Final</version.org.jboss.xnio.netty.netty-xnio-transport>
        <version.org.jctools.jctools-core>2.1.2</version.org.jctools.jctools-core>
        <version.org.jetbrains.kotlin>1.7.10</version.org.jetbrains.kotlin>
        <version.org.jgroups>5.2.9.Final</version.org.jgroups>
        <version.org.jgroups.aws>2.0.1.Final</version.org.jgroups.aws>
        <version.org.jgroups.azure>2.0.2.Final</version.org.jgroups.azure>
        <version.org.jgroups.kubernetes>2.0.1.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>18.0.2</version.org.keycloak>
        <version.org.kohsuke.metainf-services>1.8</version.org.kohsuke.metainf-services>
        <version.org.latencyutils>2.0.3</version.org.latencyutils>
        <version.org.opensaml.opensaml>4.2.0</version.org.opensaml.opensaml>
        <version.org.ow2.asm>9.3</version.org.ow2.asm>
        <version.org.reactivestreams>1.0.4</version.org.reactivestreams>
        <version.org.syslog4j>0.9.30</version.org.syslog4j>
        <!-- Test dependency -->
        <version.org.keycloak.keycloak-saml-wildfly-subsystem>18.0.2</version.org.keycloak.keycloak-saml-wildfly-subsystem>
        <version.org.springframework.kafka>2.9.1</version.org.springframework.kafka>
        <version.org.testcontainers>1.16.0</version.org.testcontainers>
        <version.org.testng>7.4.0</version.org.testng>
        <version.org.wildfly.arquillian>5.0.0.Alpha5</version.org.wildfly.arquillian>
        <version.org.wildfly.core>19.0.1.Final</version.org.wildfly.core>
        <version.org.wildfly.extras.creaper>1.6.2</version.org.wildfly.extras.creaper>
        <legacy.version.org.wildfly.http-client>1.1.15.Final</legacy.version.org.wildfly.http-client>
        <version.org.wildfly.http-client>2.0.0.Final</version.org.wildfly.http-client>
        <legacy.version.org.wildfly.naming-client>1.0.17.Final</legacy.version.org.wildfly.naming-client>
        <version.org.wildfly.naming-client>2.0.0.Final</version.org.wildfly.naming-client>
        <legacy.version.org.wildfly.security.elytron>1.20.2.Final</legacy.version.org.wildfly.security.elytron>
        <legacy.version.org.wildfly.security.elytron-mp>1.20.2.Final</legacy.version.org.wildfly.security.elytron-mp>
        <version.org.wildfly.security.elytron-mp>2.0.0.Final</version.org.wildfly.security.elytron-mp>
        <legacy.version.org.wildfly.security.elytron-web>1.10.2.Final</legacy.version.org.wildfly.security.elytron-web>
        <legacy.version.org.wildfly.transaction.client>2.0.2.Final</legacy.version.org.wildfly.transaction.client>
        <version.org.wildfly.transaction.client>3.0.0.Final</version.org.wildfly.transaction.client>
        <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>
        <version.xom>1.3.7</version.xom>


        <!-- 
            WildFly Preview version properties.
            Property names should be in the form 'preview.version.xxx'. 
        -->

    </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>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-common-ee-dependency-management</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-common-expansion-dependency-management</artifactId>
                <version>${ee.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>${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-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-ee-10-api</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-ee-10-api</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-galleon-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-galleon-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-galleon-content</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-galleon-content</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-pruned</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-ee-feature-pack-pruned</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-feature-pack</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-feature-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>${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-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-preview-feature-pack-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-preview-feature-pack-common-microprofile</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-preview-feature-pack-common-microprofile</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-preview-feature-pack-content</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-preview-feature-pack-content</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-preview-feature-pack-content-microprofile</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-preview-feature-pack-content-microprofile</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-servlet-feature-pack-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-servlet-feature-pack-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-servlet-feature-pack-galleon-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-servlet-feature-pack-galleon-common</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-servlet-feature-pack-galleon-legacy</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-servlet-feature-pack-galleon-legacy</artifactId>
                <version>${ee.maven.version}</version>
                <type>zip</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>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-standard-expansion-bom</artifactId>
                <version>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-testsuite-shared-legacy-namespace</artifactId>
                <version>${ee.maven.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>${ee.maven.groupId}</groupId>
                <artifactId>wildfly-testsuite-shared</artifactId>
                <version>${ee.maven.version}</version>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>*</groupId>
                        <artifactId>*</artifactId>
                    </exclusion>
                </exclusions>
            </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-content</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>${ee.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${full.maven.groupId}</groupId>
                <artifactId>wildfly-mp-feature-pack-galleon-common</artifactId>
                <version>${full.maven.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>${full.maven.groupId}</groupId>
                <artifactId>wildfly-oidc-feature-pack-galleon-common</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>com.beust</groupId>
                <artifactId>jcommander</artifactId>
                <version>${version.com.beust}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>com.github.tomakehurst</groupId>
                <artifactId>wiremock</artifactId>
                <version>${version.com.github.tomakehurst.wiremock}</version>
                <scope>test</scope>
            </dependency>

            <!-- TODO both a testuite/shared dep and used in std and preview but not legacy -->
            <dependency>
                <groupId>com.nimbusds</groupId>
                <artifactId>nimbus-jose-jwt</artifactId>
                <version>${version.com.nimbus.jose-jwt}</version>
            </dependency>

            <dependency>
                <groupId>io.opentracing</groupId>
                <artifactId>opentracing-mock</artifactId>
                <version>${version.io.opentracing}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>io.rest-assured</groupId>
                <artifactId>rest-assured</artifactId>
                <version>${version.io.rest-assured}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.apache.directory.server</groupId>
                <artifactId>apacheds-interceptor-kerberos</artifactId>
                <version>${version.org.apache.ds}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.apache.directory.server</groupId>
                <artifactId>apacheds-test-framework</artifactId>
                <version>${version.org.apache.ds}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.apache.openjpa</groupId>
                <artifactId>openjpa-all</artifactId>
                <version>${version.org.apache.openjpa}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.awaitility</groupId>
                <artifactId>awaitility</artifactId>
                <version>${version.org.awaitility.awaitility}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.apache.groovy</groupId>
                <artifactId>groovy-all</artifactId>
                <type>pom</type>
                <version>${version.groovy-all}</version>
                <scope>test</scope>
            </dependency>
            <!-- Required by Wiremock for the MicroProfile REST Client TCK -->
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-http</artifactId>
                <version>${version.org.eclipse.jetty}</version>
                <scope>test</scope>
            </dependency>

            <!-- Required by Wiremock for the MicroProfile REST Client TCK -->
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-io</artifactId>
                <version>${version.org.eclipse.jetty}</version>
                <scope>test</scope>
            </dependency>
            <!-- Required by Wiremock for the MicroProfile REST Client TCK -->
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-server</artifactId>
                <version>${version.org.eclipse.jetty}</version>
                <scope>test</scope>
            </dependency>
            <!-- Required by Wiremock for the MicroProfile REST Client TCK -->
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-util</artifactId>
                <version>${version.org.eclipse.jetty}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-all</artifactId>
                <version>${version.org.hamcrest}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.hamcrest</groupId>
                <artifactId>java-hamcrest</artifactId>
                <version>${version.org.hamcrest.java-hamcrest}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.httpunit</groupId>
                <artifactId>httpunit</artifactId>
                <version>${version.httpunit}</version>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>javax.servlet</groupId>
                        <artifactId>servlet-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.javassist</groupId>
                <artifactId>javassist</artifactId>
                <version>${version.org.javassist}</version>
                <scope>test</scope>
            </dependency>

            <!-- Required for the MicroProfile health TCK that is run as part of the testsuite and the TCK brings in an
                 older version.

                 It also needs to be a runtime dependency because the shared testsuite requires it.
             -->
            <dependency>
                <groupId>org.jboss.arquillian.container</groupId>
                <artifactId>arquillian-container-test-spi</artifactId>
                <version>${version.org.jboss.arquillian.core}</version>
            </dependency>

            <dependency>
                <groupId>org.jboss.arquillian.junit</groupId>
                <artifactId>arquillian-junit-container</artifactId>
                <version>${version.org.jboss.arquillian.core}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.jboss.arquillian.testng</groupId>
                <artifactId>arquillian-testng-container</artifactId>
                <version>${version.org.jboss.arquillian.core}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.jboss.logmanager</groupId>
                <artifactId>commons-logging-jboss-logmanager</artifactId>
                <version>${version.org.jboss.logmanager.commons-logging-jboss-logmanager}</version>
                <scope>test</scope>
            </dependency>

            <!--
            TODO used both in testsuite/integration/legacy-ejb-client and in legacy code.
            Once legacy code use is gone, convert to <scope>test</scope>
            -->
            <dependency>
                <groupId>org.jboss.narayana.jts</groupId>
                <artifactId>narayana-jts-idlj</artifactId>
                <version>${version.org.jboss.narayana}</version>
                <exclusions>
                    <!-- TODO remove this exclusion once this supports Jakarta Transactions 1.3 -->
                    <!-- superseded by org.jboss.spec.javax.transaction:jboss-transaction-api_1.3_spec -->
                    <exclusion>
                        <groupId>org.jboss.spec.javax.transaction</groupId>
                        <artifactId>jboss-transaction-api_1.1_spec</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.spec.javax.transaction</groupId>
                        <artifactId>jboss-transaction-api_1.2_spec</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.jboss.narayana.xts</groupId>
                <artifactId>byteman_support</artifactId>
                <version>${version.org.jboss.narayana}</version>
                <scope>test</scope>
                <exclusions>
                    <!-- TODO remove this exclusion once this supports Jakarta Transactions 1.3 -->
                    <!-- superseded by org.jboss.spec.javax.transaction:jboss-transaction-api_1.3_spec -->
                    <exclusion>
                        <groupId>org.jboss.spec.javax.transaction</groupId>
                        <artifactId>jboss-transaction-api_1.1_spec</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.spec.javax.transaction</groupId>
                        <artifactId>jboss-transaction-api_1.2_spec</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <!-- only still used by tests -->
            <dependency>
                <groupId>org.jboss.shrinkwrap</groupId>
                <artifactId>shrinkwrap-api</artifactId>
                <version>${version.org.jboss.shrinkwrap.shrinkwrap}</version>
                <scope>test</scope>
            </dependency>

            <!-- only still used by JPA tests -->
            <dependency>
                <groupId>org.jboss.shrinkwrap</groupId>
                <artifactId>shrinkwrap-impl-base</artifactId>
                <version>${version.org.jboss.shrinkwrap.shrinkwrap}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.jboss.shrinkwrap.descriptors</groupId>
                <artifactId>shrinkwrap-descriptors-impl-javaee</artifactId>
                <version>${version.org.jboss.shrinkwrap.descriptors}</version>
                <scope>test</scope>
            </dependency>

            <!--
            TODO used both in testsuite/shared and in tests in clustering/marshalling/protostream.
            Once testsuite/shared use is gone, convert to <scope>test</scope>
            -->
            <dependency>
                <groupId>org.jboss.spec.javax.annotation</groupId>
                <artifactId>jboss-annotations-api_1.3_spec</artifactId>
                <version>${version.org.jboss.spec.javax.annotation.jboss-annotations-api_1.3_spec}</version>
            </dependency>

            <!--
            TODO used both in MicroProfile REST Client TCK and in legacy code.
            Once legacy code use is gone, convert to <scope>test</scope>
            -->
            <dependency>
                <groupId>org.jboss.spec.javax.servlet</groupId>
                <artifactId>jboss-servlet-api_4.0_spec</artifactId>
                <version>${version.org.jboss.spec.javax.servlet.jboss-servlet-api_4.0_spec}</version>
            </dependency>

            <!--
            TODO used both in testsuite/integration/legacy-ejb-client and in legacy code.
            Once legacy code use is gone, convert to <scope>test</scope>
            -->
            <dependency>
                <groupId>org.jboss.spec.javax.transaction</groupId>
                <artifactId>jboss-transaction-api_1.3_spec</artifactId>
                <version>${version.org.jboss.spec.javax.transaction.jboss-transaction-api_1.3_spec}</version>
            </dependency>

            <dependency>
                <groupId>org.jboss.weld.se</groupId>
                <artifactId>weld-se-core</artifactId>
                <version>${version.org.jboss.weld.weld}</version>
                <scope>test</scope>
            </dependency>

            <!--
            TODO used both in testuite/integration/elytron-oidc-client dep and in legacy code.
            Once the legacy use is removed, etc structure, this can become a <scope>test</scope> dependency.
            -->
            <dependency>
                <groupId>org.jsoup</groupId>
                <artifactId>jsoup</artifactId>
                <version>${version.jsoup}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.keycloak</groupId>
                <artifactId>keycloak-admin-client</artifactId>
                <version>${version.org.keycloak}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.keycloak</groupId>
                <artifactId>keycloak-core</artifactId>
                <version>${version.org.keycloak}</version>
                <scope>test</scope>
            </dependency>

            <!-- Required by the org.eclipse.microprofile.rest.client:microprofile-rest-client-tck -->
            <dependency>
                <groupId>org.reactivestreams</groupId>
                <artifactId>reactive-streams-tck</artifactId>
                <version>${version.org.reactivestreams}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.springframework.kafka</groupId>
                <artifactId>spring-kafka-test</artifactId>
                <version>${version.org.springframework.kafka}</version>
                <scope>test</scope>
                <exclusions>
                    <!--
                        This version pulls in a different version of Kafka from
                        our version of Kafka Clients
                    -->
                    <exclusion>
                        <groupId>org.apache.kafka</groupId>
                        <artifactId>*</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.testcontainers</groupId>
                <artifactId>elasticsearch</artifactId>
                <version>${version.org.testcontainers}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.testcontainers</groupId>
                <artifactId>testcontainers</artifactId>
                <version>${version.org.testcontainers}</version>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.apache.commons</groupId>
                        <artifactId>commons-compress</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.wildfly.arquillian</groupId>
                <artifactId>wildfly-arquillian-common</artifactId>
                <version>${version.org.wildfly.arquillian}</version>
            </dependency>

            <dependency>
                <groupId>org.wildfly.arquillian</groupId>
                <artifactId>wildfly-arquillian-container-bootable</artifactId>
                <version>${version.org.wildfly.arquillian}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.jboss.sasl</groupId>
                        <artifactId>jboss-sasl</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.wildfly.arquillian</groupId>
                <artifactId>wildfly-arquillian-container-domain-managed</artifactId>
                <version>${version.org.wildfly.arquillian}</version>
            </dependency>

            <dependency>
                <groupId>org.wildfly.arquillian</groupId>
                <artifactId>wildfly-arquillian-container-managed</artifactId>
                <version>${version.org.wildfly.arquillian}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.jboss.sasl</groupId>
                        <artifactId>jboss-sasl</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.wildfly.arquillian</groupId>
                <artifactId>wildfly-arquillian-protocol-jmx</artifactId>
                <version>${version.org.wildfly.arquillian}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.wildfly.security</groupId>
                        <artifactId>wildfly-security-manager</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.wildfly.arquillian</groupId>
                <artifactId>wildfly-arquillian-testenricher-msc</artifactId>
                <version>${version.org.wildfly.arquillian}</version>
            </dependency>

            <dependency>
                <groupId>org.wildfly.checkstyle</groupId>
                <artifactId>wildfly-checkstyle-config</artifactId>
                <version>${version.org.wildfly.checkstyle-config}</version>
            </dependency>

            <dependency>
                <groupId>org.wildfly.extras.creaper</groupId>
                <artifactId>creaper-commands</artifactId>
                <version>${version.org.wildfly.extras.creaper}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.wildfly.extras.creaper</groupId>
                <artifactId>creaper-core</artifactId>
                <version>${version.org.wildfly.extras.creaper}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.wildfly.galleon-plugins</groupId>
                <artifactId>transformer</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-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>

        </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>-->
                        </systemPropertyVariables>
                        <systemProperties>
                            <property>
                                <name>java.util.logging.manager</name>
                                <value>org.jboss.logmanager.LogManager</value>
                            </property>
                            <property>
                                <name>jdk.xml.enableTemplatesImplDeserialization</name>
                                <value>true</value>
                            </property>
                        </systemProperties>
                        <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-ejb-api</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>
                                        </excludes>
                                    </bannedDependencies>
                                    <dependencyConvergence></dependencyConvergence>
                                </rules>
                            </configuration>
                        </execution>
                        <execution>
                            <id>require-java11</id>
                            <goals>
                                <goal>enforce</goal>
                            </goals>
                            <phase>deploy</phase>
                            <configuration>
                                <rules>
                                    <requireJavaVersion>
                                        <version>[11,12)</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.jboss.galleon</groupId>
                    <artifactId>galleon-maven-plugin</artifactId>
                    <version>${version.org.jboss.galleon}</version>
                </plugin>
                <plugin>
                    <groupId>org.wildfly.build</groupId>
                    <artifactId>wildfly-feature-pack-build-maven-plugin</artifactId>
                    <version>${version.org.wildfly.build-tools}</version>
                </plugin>
                <plugin>
                    <groupId>org.wildfly.build</groupId>
                    <artifactId>wildfly-server-provisioning-maven-plugin</artifactId>
                    <version>${version.org.wildfly.build-tools}</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.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.maven.plugins}</version>
                </plugin>
                <plugin>
                    <groupId>org.asciidoctor</groupId>
                    <artifactId>asciidoctor-maven-plugin</artifactId>
                    <version>${version.asciidoctor.plugin}</version>
                    <configuration>
                        <sourceHighlighter>coderay</sourceHighlighter>
                        <attributes>
                            <icons>font</icons>
                            <pagenums></pagenums>
                            <version>${project.version}</version>
                            <idprefix></idprefix>
                            <idseparator>-</idseparator>
                            <allow-uri-read>true</allow-uri-read>
                            <wildflyVersion>13</wildflyVersion>
                            <revnumber>${project.version}</revnumber>
                            <revdate>${maven.build.timestamp}</revdate>
                            <organization>${project.organization.name}</organization>
                        </attributes>
                    </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>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>
                <maven.test.skip>true</maven.test.skip>
            </properties>
            <build>
                <defaultGoal>clean install</defaultGoal>
            </build>
        </profile>

        <profile>
            <id>ee8.build.profile</id>
            <activation>
                <property>
                    <name>!quickly</name>
                </property>
            </activation>
            <modules>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>bean-validation</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>connector</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>ee</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>iiop-openjdk</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>jsf</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>messaging-activemq</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>observability</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>rts</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>transactions</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>undertow</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>web-common</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>webservices</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>xts</module>
                <!-- TODO once moved to jakarta.* move to main module set-->
                <module>testsuite/shared</module>
            </modules>
        </profile>
        <profile>
            <id>jdk18</id>
            <activation>
                <jdk>[18,)</jdk>
            </activation>
            <properties>
                <modular.jdk.props>
                    -Djava.security.manager=allow
                </modular.jdk.props>
            </properties>
        </profile>
        <profile>
            <id>docs</id>
            <activation>
                <property>
                    <name>docs</name>
                </property>
            </activation>
            <modules>
                <module>docs</module>
            </modules>
        </profile>

        <!--
          Name: jpda
          Descr: Enable JPDA remote debuging
        -->
        <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>
            <id>ee9.test.profile</id>
            <activation>
                <property>
                    <name>ts.ee9</name>
                </property>
            </activation>
            <properties>
                <wildfly.build.output.dir>ee-9/dist/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>
                <!-- 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.ee9.test.profile</id>
            <activation>
                <property>
                    <name>ts.bootable.ee9</name>
                </property>
            </activation>
            <properties>
                <testsuite.ee.galleon.pack.artifactId>wildfly-preview-feature-pack</testsuite.ee.galleon.pack.artifactId>
                <!-- 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>elytron.profile</id>
            <activation>
                <property>
                    <name>elytron</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>

        <profile>
            <id>victims-scan</id>
            <activation>
                <property>
                    <name>victims-scan</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-enforcer-plugin</artifactId>
                        <version>${version.enforcer.plugin}</version>
                        <executions>
                            <execution>
                                <id>enforce-victims-rule</id>
                                <goals>
                                    <goal>enforce</goal>
                                </goals>
                                <configuration>
                                    <rules>
                                        <rule implementation="com.redhat.victims.VictimsRule">
                                            <metadata>warning</metadata>
                                            <fingerprint>fatal</fingerprint>
                                            <updates>daily</updates>
                                        </rule>
                                    </rules>
                                </configuration>
                            </execution>
                        </executions>
                        <dependencies>
                            <dependency>
                                <groupId>com.redhat.victims</groupId>
                                <artifactId>enforce-victims-rule</artifactId>
                                <version>1.3.4</version>
                            </dependency>
                        </dependencies>
                    </plugin>
                </plugins>
            </build>
        </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="**/jaxb-jxc*.jar"></exclude>
                                                        <exclude name="**/jaxb-xjc*.jar"></exclude>
                                                        <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="**/jaxb*.jar"></exclude>
                                                        <exclude name="**/jaxb*.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>https://repository.jboss.org/nexus/content/groups/staging/</url>
                    <layout>default</layout>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                    <id>jboss-staging-repository-group</id>
                    <name>JBoss Staging Repository Group</name>
                    <url>https://repository.jboss.org/nexus/content/groups/staging/</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>
            </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>
            <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>
    </profiles>
</project>
