<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>
  <groupId>org.eclipse.jetty</groupId>
  <artifactId>jetty-project</artifactId>
  <version>10.0.17</version>
  <name>Jetty :: Project</name>
  <description>The Eclipse Jetty Project</description>
  <packaging>pom</packaging>
  <url>https://eclipse.dev/jetty</url>
  <inceptionYear>1995</inceptionYear>

  <properties>
    <!-- build -->
    <compiler.source>11</compiler.source>
    <compiler.target>11</compiler.target>
    <compiler.release>11</compiler.release>
    <maven.compiler.createMissingPackageInfoClass>false</maven.compiler.createMissingPackageInfoClass>
    <jetty.url>https://eclipse.dev/jetty/</jetty.url>
    <jmhjar.name>benchmarks</jmhjar.name>
    <osgi.slf4j.import.packages>org.slf4j;version="[1.7,3.0)", org.slf4j.event;version="[1.7,3.0)", org.slf4j.helpers;version="[1.7,3.0)", org.slf4j.spi;version="[1.7,3.0)"</osgi.slf4j.import.packages>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <!-- dependency versions -->
    <alpn.agent.version>2.0.10</alpn.agent.version>
    <ant.version>1.10.14</ant.version>
    <apache.avro.version>1.11.3</apache.avro.version>
    <apache.httpclient.version>4.5.14</apache.httpclient.version>
    <apache.httpcore.version>4.4.16</apache.httpcore.version>
    <asciidoctorj-diagram.version>2.2.13</asciidoctorj-diagram.version>
    <asciidoctorj.version>2.5.6</asciidoctorj.version>
    <mina.core.version>2.2.3</mina.core.version>
    <asm.version>9.6</asm.version>
    <awaitility.version>4.2.0</awaitility.version>
    <bndlib.version>6.3.1</bndlib.version>
    <build-support.version>1.5</build-support.version>
    <checkstyle.version>10.3.4</checkstyle.version>
    <commons-codec.version>1.16.0</commons-codec.version>
    <commons.compress.version>1.24.0</commons.compress.version>
    <commons.io.version>2.14.0</commons.io.version>
    <commons-lang3.version>3.13.0</commons-lang3.version>
    <conscrypt.version>2.5.2</conscrypt.version>
    <disruptor.version>3.4.2</disruptor.version>
    <felix.version>7.0.5</felix.version>
    <findbugs.jsr305.version>3.0.2</findbugs.jsr305.version>
    <google.errorprone.version>2.15.0</google.errorprone.version>
    <grpc.version>1.49.2</grpc.version>
    <gson.version>2.9.1</gson.version>
    <guava.version>32.1.2-jre</guava.version>
    <guice.version>5.1.0</guice.version>
    <hamcrest.version>2.2</hamcrest.version>
    <hawtio.version>2.15.2</hawtio.version>
    <hazelcast.version>5.2.1</hazelcast.version>
    <infinispan.protostream.version>4.6.5.Final</infinispan.protostream.version>
    <infinispan.version>11.0.17.Final</infinispan.version>
    <jackson.version>2.14.2</jackson.version>
    <jakarta.activation.api.version>1.2.2</jakarta.activation.api.version>
    <jakarta.annotation.api.version>1.3.5</jakarta.annotation.api.version>
    <jakarta.el-api.version>3.0.3</jakarta.el-api.version>
    <jakarta.enterprise.cdi.api.version>2.0.2</jakarta.enterprise.cdi.api.version>
    <jakarta.inject.api.version>1.0.5</jakarta.inject.api.version>
    <jakarta.interceptor.api.version>1.2.5</jakarta.interceptor.api.version>
    <jakarta.servlet.api.version>4.0.4</jakarta.servlet.api.version>
    <jakarta.servlet.jsp.api.version>2.3.6</jakarta.servlet.jsp.api.version>
    <jakarta.servlet.jsp.jstl.api.version>1.2.7</jakarta.servlet.jsp.jstl.api.version>
    <jakarta.servlet.jsp.jstl.impl.version>1.2.0.v201105211821</jakarta.servlet.jsp.jstl.impl.version>
    <jakarta.transaction-api.version>1.3.3</jakarta.transaction-api.version>
    <jakarta.websocket.api.version>1.1.2</jakarta.websocket.api.version>
    <jakarta.xml.bind.api.version>2.3.3</jakarta.xml.bind.api.version>
    <jakarta.xml.bind.impl.version>2.3.6</jakarta.xml.bind.impl.version>
    <jakarta.xml.jaxws.impl.version>2.3.5</jakarta.xml.jaxws.impl.version>
    <jakarta.xml.ws.api.version>2.3.3</jakarta.xml.ws.api.version>
    <jamon.version>2.82</jamon.version>
    <javax.activation.impl.version>1.1.0.v201105071233</javax.activation.impl.version>
    <javax.cdi.api.version>2.0</javax.cdi.api.version>
    <javax.mail.glassfish.version>1.4.1.v201005082020</javax.mail.glassfish.version>
    <jakarta.security.auth.message.version>1.1.3</jakarta.security.auth.message.version>
    <javax.servlet.jsp.jstl.impl.version>1.2.5</javax.servlet.jsp.jstl.impl.version>
    <jboss.logging.annotations.version>2.2.1.Final</jboss.logging.annotations.version>
    <jboss.logging.processor.version>2.2.1.Final</jboss.logging.processor.version>
    <jboss.logging.version>3.5.3.Final</jboss.logging.version>
    <jboss-logmanager.version>3.0.2.Final</jboss-logmanager.version>
    <jboss-threads.version>3.5.1.Final</jboss-threads.version>
    <jetty-assembly-descriptors.version>1.1</jetty-assembly-descriptors.version>
    <jetty.perf-helper.version>1.0.7</jetty.perf-helper.version>
    <jetty-quiche-native.version>0.18.0</jetty-quiche-native.version>
    <jetty.servlet.api.version>4.0.6</jetty.servlet.api.version>
    <jetty-test-policy.version>1.2</jetty-test-policy.version>
    <jetty.test.version>6.0</jetty.test.version>
    <jmh.version>1.37</jmh.version>
    <jna.version>5.12.1</jna.version>
    <jnr-constants.version>0.10.4</jnr-constants.version>
    <jnr-enxio.version>0.32.13</jnr-enxio.version>
    <jnr-ffi.version>2.2.12</jnr-ffi.version>
    <jnr-posix.version>3.1.15</jnr-posix.version>
    <jnr-unixsocket.version>0.38.17</jnr-unixsocket.version>
    <jolokia.version>1.7.1</jolokia.version>
    <json-simple.version>1.1.1</json-simple.version>
    <json-smart.version>2.5.0</json-smart.version>
    <jsp.impl.version>9.0.52</jsp.impl.version>
    <junit.version>5.9.1</junit.version>
    <kerb-simplekdc.version>2.0.3</kerb-simplekdc.version>
    <log4j2.version>2.20.0</log4j2.version>
    <logback.version>1.3.11</logback.version>
    <mariadb.version>3.0.8</mariadb.version>
    <mariadb.docker.version>10.3.6</mariadb.docker.version>
    <maven.resolver.version>1.9.16</maven.resolver.version>
    <maven.version>3.9.0</maven.version>
    <mongodb.version>3.12.11</mongodb.version>
    <openpojo.version>0.9.1</openpojo.version>
    <org.osgi.annotation.version>8.1.0</org.osgi.annotation.version>
    <org.osgi.core.version>6.0.0</org.osgi.core.version>
    <org.osgi.util.function.version>1.2.0</org.osgi.util.function.version>
    <org.osgi.util.promise.version>1.2.0</org.osgi.util.promise.version>
    <plexus-component-annotations.version>2.1.1</plexus-component-annotations.version>
    <plexus-utils.version>4.0.0</plexus-utils.version>
    <plexus-xml.version>4.0.2</plexus-xml.version>
    <slf4j.version>2.0.5</slf4j.version>
    <springboot.version>2.1.1.RELEASE</springboot.version>
    <taglibs-standard-impl.version>1.2.5</taglibs-standard-impl.version>
    <taglibs-standard-spec.version>1.2.5</taglibs-standard-spec.version>
    <testcontainers.version>1.19.0</testcontainers.version>
    <weld.version>3.1.9.Final</weld.version>
    <wildfly.common.version>1.6.0.Final</wildfly.common.version>
    <wildfly.elytron.version>2.2.2.Final</wildfly.elytron.version>
    <xmemcached.version>2.4.7</xmemcached.version>

    <!-- some maven plugins versions -->
    <asciidoctor.maven.plugin.version>2.2.4</asciidoctor.maven.plugin.version>
    <build-helper.maven.plugin.version>3.3.0</build-helper.maven.plugin.version>
    <buildnumber.maven.plugin.version>3.2.0</buildnumber.maven.plugin.version>
    <depends.maven.plugin.version>1.5.0</depends.maven.plugin.version>
    <flatten.maven.plugin.version>1.3.0</flatten.maven.plugin.version>
    <h2spec.maven.plugin.version>1.0.10</h2spec.maven.plugin.version>
    <jacoco.maven.plugin.version>0.8.10</jacoco.maven.plugin.version>
    <jetty-version.maven.plugin.version>2.7</jetty-version.maven.plugin.version>
    <license.maven.plugin.version>4.1</license.maven.plugin.version>
    <maven.antrun.plugin.version>3.1.0</maven.antrun.plugin.version>
    <maven.assembly.plugin.version>3.6.0</maven.assembly.plugin.version>
    <maven.bundle.plugin.version>5.1.9</maven.bundle.plugin.version>
    <maven.clean.plugin.version>3.3.1</maven.clean.plugin.version>
    <maven.checkstyle.plugin.version>3.3.0</maven.checkstyle.plugin.version>
    <maven.compiler.plugin.version>3.11.0</maven.compiler.plugin.version>
    <maven.dependency.plugin.version>3.6.0</maven.dependency.plugin.version>
    <maven.deploy.plugin.version>3.1.1</maven.deploy.plugin.version>
    <maven.enforcer.plugin.version>3.4.1</maven.enforcer.plugin.version>
    <maven.exec.plugin.version>3.1.0</maven.exec.plugin.version>
    <maven.gpg.plugin.version>3.1.0</maven.gpg.plugin.version>
    <maven.install.plugin.version>3.1.1</maven.install.plugin.version>
    <maven.invoker.plugin.version>3.6.0</maven.invoker.plugin.version>
    <groovy.version>4.0.6</groovy.version>
    <maven.jar.plugin.version>3.3.0</maven.jar.plugin.version>
    <maven.javadoc.plugin.version>3.6.0</maven.javadoc.plugin.version>
    <maven.plugin-tools.version>3.9.0</maven.plugin-tools.version>
    <maven-plugin.plugin.version>3.9.0</maven-plugin.plugin.version>
    <maven.release.plugin.version>3.0.1</maven.release.plugin.version>
    <maven.remote-resources-plugin.version>3.1.0</maven.remote-resources-plugin.version>
    <maven.resources.plugin.version>3.3.1</maven.resources.plugin.version>
    <maven.shade.plugin.version>3.5.1</maven.shade.plugin.version>
    <maven.surefire.plugin.version>3.1.2</maven.surefire.plugin.version>
    <maven.source.plugin.version>3.3.0</maven.source.plugin.version>
    <maven.war.plugin.version>3.4.0</maven.war.plugin.version>
    <spotbugs.maven.plugin.version>4.7.2.0</spotbugs.maven.plugin.version>
    <versions.maven.plugin.version>2.12.0</versions.maven.plugin.version>

    <!-- testing -->
    <invoker.mergeUserSettings>false</invoker.mergeUserSettings>
    <it.debug>false</it.debug>
    <localRepoPath>${project.build.directory}/local-repo</localRepoPath>
    <jetty.surefire.argLine>-Dfile.encoding=UTF-8 -Duser.language=en -Duser.region=US -showversion -Xmx4g -Xms2g -Xlog:gc:stderr:time,level,tags</jetty.surefire.argLine>
    <jetty.testtracker.log>false</jetty.testtracker.log>
    <jetty.unixdomain.dir>/tmp</jetty.unixdomain.dir>
    <!-- if changing this version please update default in MongoTestHelper you will get thanks from Eclipse IDE users -->
    <mongo.docker.version>3.2.20</mongo.docker.version>
    <settingsPath>src/it/settings.xml</settingsPath>
    <surefire.rerunFailingTestsCount>0</surefire.rerunFailingTestsCount>
  </properties>

  <licenses>
    <license>
      <name>Eclipse Public License - Version 2.0</name>
      <url>https://www.eclipse.org/legal/epl-2.0/</url>
    </license>
    <license>
      <name>Apache Software License - Version 2.0</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0</url>
    </license>
  </licenses>

  <scm>
    <connection>scm:git:https://github.com/eclipse/jetty.project.git</connection>
    <developerConnection>scm:git:git@github.com:eclipse/jetty.project.git</developerConnection>
    <url>https://github.com/eclipse/jetty.project</url>
  </scm>

  <modules>
    <module>build-resources</module>
    <module>demos</module>
    <module>jetty-slf4j-impl</module>
    <module>jetty-ant</module>
    <module>jetty-util</module>
    <module>jetty-jmx</module>
    <module>jetty-io</module>
    <module>jetty-quic</module>
    <module>jetty-http</module>
    <module>jetty-http2</module>
    <module>jetty-http3</module>
    <module>jetty-server</module>
    <module>jetty-xml</module>
    <module>jetty-security</module>
    <module>jetty-openid</module>
    <module>jetty-servlet</module>
    <module>jetty-webapp</module>
    <module>jetty-fcgi</module>
    <module>jetty-websocket</module>
    <module>jetty-servlets</module>
    <module>jetty-util-ajax</module>
    <module>apache-jsp</module>
    <module>apache-jstl</module>
    <module>jetty-maven-plugin</module>
    <module>jetty-jspc-maven-plugin</module>
    <module>jetty-deploy</module>
    <module>jetty-start</module>
    <module>jetty-plus</module>
    <module>jetty-annotations</module>
    <module>jetty-jndi</module>
    <module>jetty-jaas</module>
    <module>jetty-cdi</module>
    <module>jetty-client</module>
    <module>jetty-proxy</module>
    <module>jetty-jaspi</module>
    <module>jetty-rewrite</module>
    <module>jetty-nosql</module>
    <module>jetty-infinispan</module>
    <module>jetty-gcloud</module>
    <module>jetty-memcached</module>
    <module>jetty-hazelcast</module>
    <module>jetty-unixsocket</module>
    <module>tests</module>
    <module>jetty-quickstart</module>
    <module>jetty-runner</module>
    <module>jetty-http-spi</module>
    <module>jetty-osgi</module>
    <module>jetty-alpn</module>
    <module>jetty-home</module>
    <module>jetty-bom</module>
    <module>documentation</module>
    <module>jetty-keystore</module>
    <module>jetty-unixdomain-server</module>
    <module>javadoc</module>
  </modules>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <executions>
          <execution>
            <id>ban-javax-servlet-api</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <phase>validate</phase>
            <configuration>
              <rules>
                <bannedDependencies>
                  <excludes>
                    <exclude>javax.servlet:*</exclude>
                    <exclude>servletapi</exclude>
                    <exclude>org.eclipse.jetty.orbit:javax.servlet</exclude>
                    <exclude>*:javax.servlet</exclude>
                    <exclude>org.mortbay.jetty:servlet-api</exclude>
                    <exclude>jetty:servlet-api</exclude>
                    <exclude>jetty-servlet-api</exclude>
                    <exclude>javax.websocket</exclude>
                    <exclude>javax.el:*</exclude>
                    <exclude>javax.annotation:javax.annotation-api</exclude>
                  </excludes>
                  <searchTransitive>true</searchTransitive>
                </bannedDependencies>
              </rules>
            </configuration>
          </execution>
          <execution>
            <id>enforce-java</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <phase>validate</phase>
            <configuration>
              <rules>
                <requireMavenVersion>
                  <version>[3.5.0,)</version>
                  <message>[ERROR] OLD MAVEN [${maven.version}] in use, Jetty ${project.version} requires Maven 3.5.0 or newer</message>
                </requireMavenVersion>
                <requireJavaVersion>
                  <version>[11,)</version>
                  <message>[ERROR] OLD JDK [${java.version}] in use. Jetty ${project.version} requires JDK 11 or newer</message>
                </requireJavaVersion>
                <versionTxtRule implementation="org.eclipse.jetty.toolchain.enforcer.rules.VersionTxtRule" />
                <versionOsgiRule implementation="org.eclipse.jetty.toolchain.enforcer.rules.RequireOsgiCompatibleVersionRule" />
                <versionRedhatRule implementation="org.eclipse.jetty.toolchain.enforcer.rules.RequireRedhatCompatibleVersionRule" />
                <versionDebianRule implementation="org.eclipse.jetty.toolchain.enforcer.rules.RequireDebianCompatibleVersionRule" />
                <requireUpperBoundDeps/>
              </rules>
            </configuration>
          </execution>
        </executions>
        <dependencies>
          <dependency>
            <groupId>org.eclipse.jetty.toolchain</groupId>
            <artifactId>jetty-build-support</artifactId>
            <version>${build-support.version}</version>
          </dependency>
        </dependencies>
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <configuration>
          <excludes>
            <!-- build tools -->
            <exclude>**/org/eclipse/jetty/ant/**</exclude>
            <!-- example code / documentation -->
            <exclude>**/org/eclipse/jetty/embedded/**</exclude>
            <exclude>**/org/eclipse/jetty/asyncrest/**</exclude>
            <exclude>**/org/eclipse/jetty/demo/**</exclude>
            <!-- special environments / late integrations -->
            <exclude>**/org/eclipse/jetty/gcloud/**</exclude>
            <exclude>**/org/eclipse/jetty/infinispan/**</exclude>
            <exclude>**/org/eclipse/jetty/osgi/**</exclude>
            <exclude>**/org/eclipse/jetty/spring/**</exclude>
            <exclude>**/org/eclipse/jetty/http/spi/**</exclude>
            <!-- test classes -->
            <exclude>**/org/eclipse/jetty/tests/**</exclude>
            <exclude>**/org/eclipse/jetty/test/**</exclude>
          </excludes>
        </configuration>
        <executions>
          <execution>
            <id>jacoco-initialize</id>
            <phase>initialize</phase>
            <goals>
              <goal>prepare-agent</goal>
            </goals>
          </execution>
          <execution>
            <id>jacoco-setup-m-invoker-p</id>
            <phase>initialize</phase>
            <configuration>
              <!-- Enable recording of coverage during execution of maven-invoker-plugin -->
              <propertyName>invoker.mavenOpts</propertyName>
            </configuration>
            <goals>
              <goal>prepare-agent</goal>
            </goals>
          </execution>
          <execution>
            <id>jacoco-site</id>
            <phase>package</phase>
            <goals>
              <goal>report</goal>
            </goals>
            <configuration>
              <!-- list of classes that you want to see in the report.
                   Specify a narrow list of multi-module project
                   classes you want to see here.
                   This is useful to remove 3rd party library classes
                   from the report. -->
              <includes>
                <include>**/org/eclipse/jetty/**</include>
              </includes>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <configuration>
          <autoVersionSubmodules>true</autoVersionSubmodules>
          <useReleaseProfile>false</useReleaseProfile>
          <goals>deploy</goals>
          <arguments>-Peclipse-release</arguments>
          <preparationGoals>clean install</preparationGoals>
          <mavenExecutorId>forked-path</mavenExecutorId>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-remote-resources-plugin</artifactId>
        <executions>
          <execution>
            <id>copy-shared-resources</id>
            <phase>generate-resources</phase>
            <goals>
              <goal>process</goal>
            </goals>
            <configuration>
              <resourceBundles>
                <resourceBundle>org.eclipse.jetty:build-resources:${project.version}</resourceBundle>
              </resourceBundles>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <!-- The source maven plugin creates the source bundle and adds manifest -->
      <!-- if removing this we need to add it back in eclipse-release profile -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <inherited>true</inherited>
        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>package</phase>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>com.mycila</groupId>
        <artifactId>license-maven-plugin</artifactId>
        <inherited>false</inherited>
        <configuration>
          <failIfMissing>true</failIfMissing>
          <aggregate>true</aggregate>
          <strictCheck>true</strictCheck>
        </configuration>
        <executions>
          <execution>
            <id>check-java-headers</id>
            <phase>verify</phase>
            <goals>
              <goal>check</goal>
            </goals>
            <configuration>
              <header>header-template.txt</header>
              <mapping>
                <java>DOUBLESLASH_STYLE</java>
                <adoc>DOUBLESLASH_STYLE</adoc>
              </mapping>
              <includes>
                <include>**/*.java</include>
                <include>**/*.adoc</include>
              </includes>
              <excludes>
                <!-- Sabre Holdings -->
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/AntWebAppContext.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Connectors.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/types/ContextHandlers.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/types/FileMatchingConfiguration.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/types/LoginServices.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/types/SystemProperties.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/utils/ServerProxy.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/utils/TaskLog.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/AntWebXmlConfiguration.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/JettyRunTask.java</exclude>
                <exclude>jetty-ant/src/main/java/org/eclipse/jetty/ant/ServerProxyImpl.java</exclude>
                <!-- Aki Yoshida -->
                <exclude>jetty-util/src/main/java/org/eclipse/jetty/util/security/UnixCrypt.java</exclude>
                <!-- Distribution Text (no header, too noisy) -->
                <exclude>jetty-home/src/main/resources/README.adoc</exclude>
              </excludes>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <executions>
          <execution>
            <phase>process-classes</phase>
            <goals>
              <goal>manifest</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <!-- Build helper maven plugin sets the parsedVersion.osgiVersion property -->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>set-osgi-version</id>
            <phase>validate</phase>
            <goals>
              <goal>parse-version</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.eclipse.jetty.toolchain</groupId>
        <artifactId>jetty-version-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>attach-version</id>
            <phase>process-resources</phase>
            <goals>
              <goal>attach-version-text</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <version>${maven.checkstyle.plugin.version}</version>
        <configuration>
          <configLocation>jetty-checkstyle.xml</configLocation>
          <includeTestSourceDirectory>true</includeTestSourceDirectory>
          <violationSeverity>warning</violationSeverity>
          <consoleOutput>true</consoleOutput>
          <sourceDirectories>
            <!-- only scan source directory (not generated, filtered, or copied source) -->
            <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
            <sourceDirectory>${project.build.testSourceDirectory}</sourceDirectory>
          </sourceDirectories>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>build-resources</artifactId>
            <version>${project.version}</version>
          </dependency>
          <dependency>
            <groupId>com.puppycrawl.tools</groupId>
            <artifactId>checkstyle</artifactId>
            <version>${checkstyle.version}</version>
          </dependency>
        </dependencies>
        <executions>
          <execution>
            <id>checkstyle-check</id>
            <phase>validate</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>

    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>${maven.antrun.plugin.version}</version>
          <dependencies>
            <dependency>
              <groupId>org.apache.ant</groupId>
              <artifactId>ant</artifactId>
              <version>${ant.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>${maven.assembly.plugin.version}</version>
          <dependencies>
            <dependency>
              <groupId>org.eclipse.jetty.toolchain</groupId>
              <artifactId>jetty-assembly-descriptors</artifactId>
              <version>${jetty-assembly-descriptors.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-clean-plugin</artifactId>
          <version>${maven.clean.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>${maven.compiler.plugin.version}</version>
          <configuration>
            <source>${compiler.source}</source>
            <target>${compiler.target}</target>
            <release>${compiler.release}</release>
            <showWarnings>true</showWarnings>
            <compilerArgs>
              <compilerArg>-Xlint:exports</compilerArg>
            </compilerArgs>
            <testCompilerArgument>-nowarn</testCompilerArgument>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>${maven.dependency.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>${maven.deploy.plugin.version}</version>
          <configuration>
            <retryFailedDeploymentCount>10</retryFailedDeploymentCount>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-enforcer-plugin</artifactId>
          <version>${maven.enforcer.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>${maven.surefire.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-invoker-plugin</artifactId>
          <version>${maven.invoker.plugin.version}</version>
          <configuration>
            <mergeUserSettings>${invoker.mergeUserSettings}</mergeUserSettings>
            <writeJunitReport>true</writeJunitReport>
            <junitPackageName>org.eclipse.jetty.maven.its</junitPackageName>
            <debug>${it.debug}</debug>
            <javaHome>${java.home}</javaHome>
            <environmentVariables>
              <JAVA_HOME>${java.home}</JAVA_HOME>
            </environmentVariables>
            <projectsDirectory>src/it</projectsDirectory>
            <timeoutInSeconds>300</timeoutInSeconds>
            <cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
            <localRepositoryPath>${localRepoPath}</localRepositoryPath>
            <settingsFile>${settingsPath}</settingsFile>
            <skipInvocation>${skipTests}</skipInvocation>
            <streamLogsOnFailures>true</streamLogsOnFailures>
            <pomIncludes>
              <pomInclude>*/pom.xml</pomInclude>
            </pomIncludes>
            <filterProperties>
              <localRepo>${localRepoPath}</localRepo>
            </filterProperties>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-install-plugin</artifactId>
          <version>${maven.install.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>${maven.jar.plugin.version}</version>
          <configuration>
            <archive>
              <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
              <manifestEntries>
                <Implementation-Version>${project.version}</Implementation-Version>
                <Implementation-Vendor>Eclipse Jetty Project</Implementation-Vendor>
                <url>${jetty.url}</url>
              </manifestEntries>
            </archive>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>${maven.javadoc.plugin.version}</version>
          <configuration>
            <verbose>true</verbose>
            <debug>true</debug>
            <source>11</source>
            <charset>UTF-8</charset>
            <docencoding>UTF-8</docencoding>
            <encoding>UTF-8</encoding>
            <additionalOptions>-html5</additionalOptions>
            <docfilessubdirs>true</docfilessubdirs>
            <detectLinks>false</detectLinks>
            <detectJavaApiLink>false</detectJavaApiLink>
            <detectOfflineLinks>false</detectOfflineLinks>
            <show>protected</show>
            <attach>true</attach>
            <isOffline>true</isOffline>
            <excludePackageNames>com.*:org.slf4j*:org.mortbay*:*.jmh*:org.eclipse.jetty.embedded*:org.eclipse.jetty.example.asyncrest*:org.eclipse.jetty.test*</excludePackageNames>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-plugin-plugin</artifactId>
          <version>${maven-plugin.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-release-plugin</artifactId>
          <version>${maven.release.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-remote-resources-plugin</artifactId>
          <version>${maven.remote-resources-plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
          <version>${maven.resources.plugin.version}</version>
          <configuration>
            <propertiesEncoding>${project.build.sourceEncoding}</propertiesEncoding>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-shade-plugin</artifactId>
          <version>${maven.shade.plugin.version}</version>
          <configuration>
            <createDependencyReducedPom>false</createDependencyReducedPom>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
          <version>${maven.source.plugin.version}</version>
          <configuration>
            <archive>
              <manifestEntries>
                <Bundle-ManifestVersion>2</Bundle-ManifestVersion>
                <Bundle-Name>${project.name}</Bundle-Name>
                <Bundle-SymbolicName>${bundle-symbolic-name}.source</Bundle-SymbolicName>
                <Bundle-Vendor>Eclipse Jetty Project</Bundle-Vendor>
                <Bundle-Version>${parsedVersion.osgiVersion}</Bundle-Version>
                <Eclipse-SourceBundle>${bundle-symbolic-name};version="${parsedVersion.osgiVersion}";roots:="."</Eclipse-SourceBundle>
              </manifestEntries>
            </archive>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>${maven.surefire.plugin.version}</version>
          <configuration>
            <trimStackTrace>false</trimStackTrace>
            <rerunFailingTestsCount>${surefire.rerunFailingTestsCount}</rerunFailingTestsCount>
            <forkedProcessTimeoutInSeconds>3600</forkedProcessTimeoutInSeconds>
            <argLine>
              @{argLine} ${jetty.surefire.argLine}
            </argLine>
            <failIfNoTests>false</failIfNoTests>
            <forkCount>1</forkCount>
            <reuseForks>true</reuseForks> <!-- to work around crash at https://github.com/junit-team/junit5/issues/801 -->
            <!-- order can be different depending on os jvm so let's force it -->
            <runOrder>alphabetical</runOrder>
            <systemPropertyVariables>
              <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
              <jetty.unixdomain.dir>${jetty.unixdomain.dir}</jetty.unixdomain.dir>
              <junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
              <jetty.testtracker.log>${jetty.testtracker.log}</jetty.testtracker.log>
            </systemPropertyVariables>
            <!-- The LC_ALL env variable must have some UTF variant otherwise creating and/or reading files with non-ascii names doesn't work -->
            <environmentVariables>
              <LC_ALL>en_US.UTF-8</LC_ALL>
            </environmentVariables>
          </configuration>
          <dependencies>
            <dependency>
              <groupId>org.ow2.asm</groupId>
              <artifactId>asm-commons</artifactId>
              <version>${asm.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>${maven.war.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.eclipse.jetty.toolchain</groupId>
          <artifactId>jetty-version-maven-plugin</artifactId>
          <version>${jetty-version.maven.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>${jacoco.maven.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>com.mycila</groupId>
          <artifactId>license-maven-plugin</artifactId>
          <version>${license.maven.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.felix</groupId>
          <artifactId>maven-bundle-plugin</artifactId>
          <version>${maven.bundle.plugin.version}</version>
          <configuration>
            <supportedProjectTypes>
              <supportedProjectType>jar</supportedProjectType>
              <supportedProjectType>maven-plugin</supportedProjectType>
            </supportedProjectTypes>
            <instructions>
              <Bundle-SymbolicName>${bundle-symbolic-name}</Bundle-SymbolicName>
              <Bundle-Description>Jetty module for ${project.name}</Bundle-Description>
              <Bundle-RequiredExecutionEnvironment>JavaSE-11</Bundle-RequiredExecutionEnvironment>
              <Bundle-DocURL>${jetty.url}</Bundle-DocURL>
              <Bundle-Vendor>Eclipse Jetty Project</Bundle-Vendor>
              <Bundle-Classpath>.</Bundle-Classpath>
              <Bundle-Copyright>Copyright (c) 2008-2022 Mort Bay Consulting Pty Ltd and others.</Bundle-Copyright>
              <Import-Package>
                ${osgi.slf4j.import.packages},
                *
              </Import-Package>
              <_provider-policy><![CDATA[$<range;[===,=+)>]]></_provider-policy>
              <_consumer-policy><![CDATA[$<range;[===,+)>]]></_consumer-policy>
              <_noee>true</_noee>
            </instructions>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.servicemix.tooling</groupId>
          <artifactId>depends-maven-plugin</artifactId>
          <version>${depends.maven.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.asciidoctor</groupId>
          <artifactId>asciidoctor-maven-plugin</artifactId>
          <version>${asciidoctor.maven.plugin.version}</version>
          <dependencies>
            <dependency>
              <groupId>org.asciidoctor</groupId>
              <artifactId>asciidoctorj-diagram</artifactId>
              <version>${asciidoctorj-diagram.version}</version>
            </dependency>
          </dependencies>
          <configuration>
            <backend>html5</backend>
            <requires>
              <require>asciidoctor-diagram</require>
            </requires>
            <attributes>
              <JDURL>https://eclipse.dev/jetty/javadoc/jetty-10</JDURL>
              <SRCDIR>${basedir}/..</SRCDIR>
              <GITBROWSEURL>https://github.com/eclipse/jetty.project/tree/jetty-10.0.x</GITBROWSEURL>
              <GITDOCURL>https://github.com/eclipse/jetty.project/tree/jetty-10.0.x/documentation/jetty-documentation/src/main/asciidoc</GITDOCURL>
              <MVNCENTRAL>http://central.maven.org/maven2</MVNCENTRAL>
              <VERSION>${project.version}</VERSION>
              <TIMESTAMP>${maven.build.timestamp}</TIMESTAMP>
              <toc>left</toc>
              <icons>font</icons>
            </attributes>
          </configuration>
          <executions>
            <execution>
              <id>index</id>
              <phase>generate-resources</phase>
              <goals>
                <goal>process-asciidoc</goal>
              </goals>
              <configuration>
                <sourceDirectory>src/main/asciidoc</sourceDirectory>
                <sourceDocumentName>index.adoc</sourceDocumentName>
                <outputDirectory>${project.build.directory}/html</outputDirectory>
              </configuration>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>${build-helper.maven.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>buildnumber-maven-plugin</artifactId>
          <version>${buildnumber.maven.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <version>${maven.exec.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.mortbay.jetty</groupId>
          <artifactId>h2spec-maven-plugin</artifactId>
          <version>${h2spec.maven.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>versions-maven-plugin</artifactId>
          <version>${versions.maven.plugin.version}</version>
          <configuration>
            <processDependencies>true</processDependencies>
            <processDependencyManagement>true</processDependencyManagement>
            <processPluginDependencies>true</processPluginDependencies>
            <processPluginDependenciesInPluginManagement>true</processPluginDependenciesInPluginManagement>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

  <dependencies>
    <dependency>
      <groupId>org.eclipse.jetty.toolchain</groupId>
      <artifactId>jetty-test-helper</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>biz.aQute.bnd</groupId>
        <artifactId>biz.aQute.bndlib</artifactId>
        <version>${bndlib.version}</version>
      </dependency>
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-core</artifactId>
        <version>${logback.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-constants</artifactId>
        <version>${jnr-constants.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-enxio</artifactId>
        <version>${jnr-enxio.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-ffi</artifactId>
        <version>${jnr-ffi.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-posix</artifactId>
        <version>${jnr-posix.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-unixsocket</artifactId>
        <version>${jnr-unixsocket.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.code.findbugs</groupId>
        <artifactId>jsr305</artifactId>
        <version>${findbugs.jsr305.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.errorprone</groupId>
        <artifactId>error_prone_annotations</artifactId>
        <version>${google.errorprone.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>${gson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>${guava.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.inject</groupId>
        <artifactId>guice</artifactId>
        <version>${guice.version}</version>
      </dependency>
      <dependency>
        <groupId>com.googlecode.json-simple</groupId>
        <artifactId>json-simple</artifactId>
        <version>${json-simple.version}</version>
      </dependency>
      <dependency>
        <groupId>com.jamonapi</groupId>
        <artifactId>jamon</artifactId>
        <version>${jamon.version}</version>
        <exclusions>
          <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>com.jamonapi</groupId>
        <artifactId>jamon_war</artifactId>
        <version>${jamon.version}</version>
        <type>war</type>
        <exclusions>
          <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.jolokia</groupId>
        <artifactId>jolokia-war</artifactId>
        <version>${jolokia.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>com.openpojo</groupId>
        <artifactId>openpojo</artifactId>
        <version>${openpojo.version}</version>
      </dependency>
      <dependency>
        <groupId>com.sun.xml.ws</groupId>
        <artifactId>jaxws-rt</artifactId>
        <version>${jakarta.xml.jaxws.impl.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>${commons-codec.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${commons.io.version}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-core</artifactId>
        <version>${grpc.version}</version>
      </dependency>
      <dependency>
        <groupId>io.hawt</groupId>
        <artifactId>hawtio-default</artifactId>
        <version>${hawtio.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>jakarta.el</groupId>
        <artifactId>jakarta.el-api</artifactId>
        <version>${jakarta.el-api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.enterprise</groupId>
        <artifactId>jakarta.enterprise.cdi-api</artifactId>
        <version>${jakarta.enterprise.cdi.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.activation</groupId>
        <artifactId>jakarta.activation-api</artifactId>
        <version>${jakarta.activation.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.annotation</groupId>
        <artifactId>jakarta.annotation-api</artifactId>
        <version>${jakarta.annotation.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.interceptor</groupId>
        <artifactId>jakarta.interceptor-api</artifactId>
        <version>${jakarta.interceptor.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.inject</groupId>
        <artifactId>jakarta.inject-api</artifactId>
        <version>${jakarta.inject.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.servlet</groupId>
        <artifactId>jakarta.servlet-api</artifactId>
        <version>${jakarta.servlet.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.servlet.jsp</groupId>
        <artifactId>jakarta.servlet.jsp-api</artifactId>
        <version>${jakarta.servlet.jsp.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.servlet.jsp.jstl</groupId>
        <artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
        <version>${jakarta.servlet.jsp.jstl.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.transaction</groupId>
        <artifactId>jakarta.transaction-api</artifactId>
        <version>${jakarta.transaction-api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.xml.bind</groupId>
        <artifactId>jakarta.xml.bind-api</artifactId>
        <version>${jakarta.xml.bind.api.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.xml.ws</groupId>
        <artifactId>jakarta.xml.ws-api</artifactId>
        <version>${jakarta.xml.ws.api.version}</version>
      </dependency>
      <dependency>
        <groupId>net.java.dev.jna</groupId>
        <artifactId>jna-jpms</artifactId>
        <version>${jna.version}</version>
      </dependency>
      <dependency>
        <groupId>net.minidev</groupId>
        <artifactId>json-smart</artifactId>
        <version>${json-smart.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.ant</groupId>
        <artifactId>ant</artifactId>
        <version>${ant.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.ant</groupId>
        <artifactId>ant-launcher</artifactId>
        <version>${ant.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>${commons-lang3.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.felix</groupId>
        <artifactId>org.apache.felix.framework</artifactId>
        <version>${felix.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kerby</groupId>
        <artifactId>kerb-simplekdc</artifactId>
        <version>${kerb-simplekdc.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>${log4j2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-artifact</artifactId>
        <version>${maven.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-core</artifactId>
        <version>${maven.version}</version>
        <exclusions>
          <exclusion>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
          </exclusion>
          <exclusion>
            <groupId>com.google.code.findbugs</groupId>
            <artifactId>jsr305</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-model</artifactId>
        <version>${maven.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-plugin-api</artifactId>
        <version>${maven.version}</version>
        <exclusions>
          <exclusion>
            <groupId>javax.enterprise</groupId>
            <artifactId>cdi-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-resolver-provider</artifactId>
        <version>${maven.version}</version>
        <exclusions>
          <exclusion>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-settings</artifactId>
        <version>${maven.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.plugin-tools</groupId>
        <artifactId>maven-plugin-annotations</artifactId>
        <version>${maven.plugin-tools.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.plugin-tools</groupId>
        <artifactId>maven-plugin-tools-api</artifactId>
        <version>${maven.plugin-tools.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.taglibs</groupId>
        <artifactId>taglibs-standard-impl</artifactId>
        <version>${taglibs-standard-impl.version}</version>
        <exclusions>
          <!-- We are using the jakarta.* artifacts instead -->
          <exclusion>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.taglibs</groupId>
        <artifactId>taglibs-standard-spec</artifactId>
        <version>${taglibs-standard-spec.version}</version>
        <exclusions>
          <!-- We are using the jakarta.* artifacts instead -->
          <exclusion>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.awaitility</groupId>
        <artifactId>awaitility</artifactId>
        <version>${awaitility.version}</version>
      </dependency>
      <dependency>
        <groupId>org.asciidoctor</groupId>
        <artifactId>asciidoctorj</artifactId>
        <version>${asciidoctorj.version}</version>
      </dependency>
      <dependency>
        <groupId>org.asciidoctor</groupId>
        <artifactId>asciidoctor-maven-plugin</artifactId>
        <version>${asciidoctor.maven.plugin.version}</version>
      </dependency>
      <dependency>
        <groupId>org.conscrypt</groupId>
        <artifactId>conscrypt-openjdk-uber</artifactId>
        <version>${conscrypt.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.plexus</groupId>
        <artifactId>plexus-component-annotations</artifactId>
        <version>${plexus-component-annotations.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.plexus</groupId>
        <artifactId>plexus-utils</artifactId>
        <version>${plexus-utils.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.plexus</groupId>
        <artifactId>plexus-xml</artifactId>
        <version>${plexus-xml.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>apache-jsp</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>apache-jstl</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-alpn-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-alpn-conscrypt-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-alpn-conscrypt-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-alpn-java-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-alpn-java-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-alpn-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-annotations</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-ant</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-cdi</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-deploy</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-hazelcast</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-home</artifactId>
        <version>${project.version}</version>
        <type>zip</type>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.tests</groupId>
        <artifactId>jetty-home-tester</artifactId>
        <version>${project.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-http</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-http-spi</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>infinispan-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>infinispan-embedded</artifactId>
        <classifier>config</classifier>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>infinispan-embedded-query</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>infinispan-remote</artifactId>
        <classifier>config</classifier>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>infinispan-remote-query</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-io</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-nosql</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-jaas</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-jaspi</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-jmx</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-jndi</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-jspc-maven-plugin</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-keystore</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-maven-plugin</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-openid</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-plus</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-proxy</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-quickstart</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-rewrite</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-runner</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-security</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-servlet</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-servlets</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-slf4j-impl</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-start</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-unixdomain-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-unixsocket-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-unixsocket-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-unixsocket-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-util</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-util-ajax</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-webapp</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-xml</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-async-rest-jar</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-async-rest-webapp</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-container-initializer</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-jaas-webapp</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-jetty-webapp</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-jndi-webapp</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-jsp-webapp</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-mock-resources</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-proxy-webapp</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-spec-webapp</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-simple-webapp</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.demos</groupId>
        <artifactId>demo-web-fragment</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.fcgi</groupId>
        <artifactId>fcgi-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.fcgi</groupId>
        <artifactId>fcgi-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.gcloud</groupId>
        <artifactId>jetty-gcloud-session-manager</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-hpack</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-http-client-transport</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http3</groupId>
        <artifactId>http3-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http3</groupId>
        <artifactId>http3-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http3</groupId>
        <artifactId>http3-qpack</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http3</groupId>
        <artifactId>http3-http-client-transport</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http3</groupId>
        <artifactId>http3-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.memcached</groupId>
        <artifactId>jetty-memcached-sessions</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.osgi</groupId>
        <artifactId>jetty-osgi-alpn</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.osgi</groupId>
        <artifactId>jetty-osgi-boot</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.osgi</groupId>
        <artifactId>jetty-osgi-boot-jsp</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.osgi</groupId>
        <artifactId>jetty-osgi-boot-warurl</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.osgi</groupId>
        <artifactId>jetty-httpservice</artifactId>
        <version>${project.version}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.jetty.quic</groupId>
        <artifactId>quic-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.quic</groupId>
        <artifactId>quic-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.quic</groupId>
        <artifactId>quic-quiche-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.quic</groupId>
        <artifactId>quic-quiche-jna</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.quic</groupId>
        <artifactId>quic-quiche-foreign-incubator</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.quic</groupId>
        <artifactId>quic-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.tests</groupId>
        <artifactId>jetty-http-tools</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.tests</groupId>
        <artifactId>test-distribution</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.tests</groupId>
        <artifactId>test-sessions-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-core-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-core-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-core-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-javax-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-javax-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-javax-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-jetty-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-jetty-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-jetty-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-jetty-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-servlet</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.orbit</groupId>
        <artifactId>javax.activation</artifactId>
        <version>${javax.activation.impl.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.orbit</groupId>
        <artifactId>javax.mail.glassfish</artifactId>
        <version>${javax.mail.glassfish.version}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.security.auth.message</groupId>
        <artifactId>jakarta.security.auth.message-api</artifactId>
        <version>${jakarta.security.auth.message.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.orbit</groupId>
        <artifactId>javax.servlet.jsp.jstl</artifactId>
        <version>${jakarta.servlet.jsp.jstl.impl.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.eclipse.jetty.orbit</groupId>
            <artifactId>javax.servlet</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.eclipse.jetty.orbit</groupId>
            <artifactId>javax.servlet.jsp</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.toolchain</groupId>
        <artifactId>jetty-javax-websocket-api</artifactId>
        <version>${jakarta.websocket.api.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.toolchain</groupId>
        <artifactId>jetty-perf-helper</artifactId>
        <version>${jetty.perf-helper.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.toolchain</groupId>
        <artifactId>jetty-servlet-api</artifactId>
        <version>${jetty.servlet.api.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.toolchain</groupId>
        <artifactId>jetty-test-helper</artifactId>
        <version>${jetty.test.version}</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish.jaxb</groupId>
        <artifactId>jaxb-runtime</artifactId>
        <version>${jakarta.xml.bind.impl.version}</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish.web</groupId>
        <artifactId>javax.servlet.jsp.jstl</artifactId>
        <version>${javax.servlet.jsp.jstl.impl.version}</version>
        <exclusions>
          <!-- We are using the jakarta.* artifacts instead -->
          <exclusion>
            <groupId>javax.servlet.jsp.jstl</groupId>
            <artifactId>jstl-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.el</groupId>
            <artifactId>el-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest</artifactId>
        <version>${hamcrest.version}</version>
      </dependency>
      <dependency>
        <groupId>org.infinispan</groupId>
        <artifactId>infinispan-bom</artifactId>
        <version>${infinispan.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.infinispan.protostream</groupId>
        <artifactId>protostream</artifactId>
        <version>${infinispan.protostream.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.avro</groupId>
        <artifactId>avro</artifactId>
        <version>${apache.avro.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-compress</artifactId>
        <version>${commons.compress.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.mina</groupId>
        <artifactId>mina-core</artifactId>
        <version>${mina.core.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson</groupId>
        <artifactId>jackson-bom</artifactId>
        <version>${jackson.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.wildfly.common</groupId>
        <artifactId>wildfly-common</artifactId>
        <version>${wildfly.common.version}</version>
      </dependency>
      <dependency>
        <groupId>org.wildfly.security</groupId>
        <artifactId>wildfly-elytron</artifactId>
        <version>${wildfly.elytron.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.logging</groupId>
        <artifactId>jboss-logging</artifactId>
        <version>${jboss.logging.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.logging</groupId>
        <artifactId>jboss-logging-annotations</artifactId>
        <version>${jboss.logging.annotations.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.logging</groupId>
        <artifactId>jboss-logging-processor</artifactId>
        <version>${jboss.logging.processor.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.logmanager</groupId>
        <artifactId>jboss-logmanager</artifactId>
        <version>${jboss-logmanager.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.threads</groupId>
        <artifactId>jboss-threads</artifactId>
        <version>${jboss-threads.version}</version>
      </dependency>
      <dependency>
        <groupId>org.junit</groupId>
        <artifactId>junit-bom</artifactId>
        <version>${junit.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.mariadb.jdbc</groupId>
        <artifactId>mariadb-java-client</artifactId>
        <version>${mariadb.version}</version>
      </dependency>
      <dependency>
        <groupId>org.mortbay.jasper</groupId>
        <artifactId>apache-jsp</artifactId>
        <version>${jsp.impl.version}</version>
      </dependency>
      <dependency>
        <groupId>org.mortbay.jetty.quiche</groupId>
        <artifactId>jetty-quiche-native</artifactId>
        <version>${jetty-quiche-native.version}</version>
      </dependency>
      <dependency>
        <groupId>org.osgi</groupId>
        <!-- older artifact location, some of our transitive deps still use this coordinate -->
        <artifactId>org.osgi.core</artifactId>
        <version>${org.osgi.core.version}</version>
      </dependency>
      <dependency>
        <groupId>org.osgi</groupId>
        <!-- newer artifact location, some of our transitive deps use this up to date coordinate -->
        <artifactId>osgi.core</artifactId>
        <version>${org.osgi.core.version}</version>
      </dependency>
      <dependency>
        <groupId>org.osgi</groupId>
        <artifactId>osgi.annotation</artifactId>
        <version>${org.osgi.annotation.version}</version>
      </dependency>
      <dependency>
        <groupId>org.osgi</groupId>
        <artifactId>org.osgi.util.function</artifactId>
        <version>${org.osgi.util.function.version}</version>
      </dependency>
      <dependency>
        <groupId>org.osgi</groupId>
        <artifactId>org.osgi.util.promise</artifactId>
        <version>${org.osgi.util.promise.version}</version>
      </dependency>
      <dependency>
        <groupId>org.ow2.asm</groupId>
        <artifactId>asm-bom</artifactId>
        <version>${asm.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl104-over-slf4j</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jul-to-slf4j</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>log4j-over-slf4j</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-bom</artifactId>
        <version>${testcontainers.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <profiles>
    <profile>
      <id>jdk17</id>
      <activation>
        <jdk>[17,)</jdk>
      </activation>
      <modules>
        <!-- plugin org.eclipse.tycho:tycho-p2-repository-plugin:3.0.0+ can only be used with jfk 17 -->
        <module>jetty-p2</module>
      </modules>
    </profile>
    <profile>
      <id>unix-domain-windows</id>
      <activation>
        <os>
          <family>Windows</family>
        </os>
      </activation>
      <properties>
        <jetty.unixdomain.dir>${user.home}</jetty.unixdomain.dir>
      </properties>
    </profile>
    <profile>
      <id>errorprone</id>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-compiler-plugin</artifactId>
              <configuration>
                <showWarnings>true</showWarnings>
                <compilerArgs combine.children="append">
                  <arg>-XDcompilePolicy=simple</arg>
                  <arg>-Xplugin:ErrorProne -XepAllErrorsAsWarnings</arg>
                </compilerArgs>
                <annotationProcessorPaths>
                  <path>
                    <groupId>com.google.errorprone</groupId>
                    <artifactId>error_prone_core</artifactId>
                    <version>${google.errorprone.version}</version>
                  </path>
                </annotationProcessorPaths>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    </profile>
    <profile>
      <id>config</id>
      <activation>
        <file>
          <exists>src/main/config</exists>
        </file>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <executions>
              <execution>
                <id>copy-resources</id>
                <phase>process-resources</phase>
                <goals>
                  <goal>copy-resources</goal>
                </goals>
                <configuration>
                  <encoding>UTF-8</encoding>
                  <useDefaultDelimiters>false</useDefaultDelimiters>
                  <delimiters>
                    <delimiter>@</delimiter>
                  </delimiters>
                  <outputDirectory>${project.build.directory}/jetty-config-files</outputDirectory>
                  <resources>
                    <resource>
                      <directory>src/main/config</directory>
                      <filtering>true</filtering>
                      <excludes>
                        <exclude>**/*.p12</exclude>
                      </excludes>
                    </resource>
                  </resources>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
              <execution>
                <id>config-assembly</id>
                <phase>package</phase>
                <goals>
                  <goal>single</goal>
                </goals>
                <configuration>
                  <descriptorRefs>
                    <descriptorRef>config</descriptorRef>
                  </descriptorRefs>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>config-template</id>
      <activation>
        <file>
          <exists>src/main/config-template</exists>
        </file>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <executions>
              <execution>
                <id>copy-resources</id>
                <phase>process-resources</phase>
                <goals>
                  <goal>copy-resources</goal>
                </goals>
                <configuration>
                  <encoding>UTF-8</encoding>
                  <useDefaultDelimiters>false</useDefaultDelimiters>
                  <delimiters>
                    <delimiter>@</delimiter>
                  </delimiters>
                  <outputDirectory>${project.build.directory}/jetty-config-files</outputDirectory>
                  <resources>
                    <resource>
                      <directory>src/main/config-template</directory>
                      <filtering>true</filtering>
                      <excludes>
                        <exclude>**/*.p12</exclude>
                      </excludes>
                    </resource>
                  </resources>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
              <execution>
                <phase>package</phase>
                <goals>
                  <goal>single</goal>
                </goals>
                <configuration>
                  <descriptors>
                    <descriptor>src/main/assembly/config.xml</descriptor>
                  </descriptors>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>eclipse-release</id>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-enforcer-plugin</artifactId>
            <executions>
              <execution>
                <id>enforce-java</id>
                <goals>
                  <goal>enforce</goal>
                </goals>
                <configuration>
                  <rules>
                    <requireJavaVersion>
                      <version>[17,)</version>
                      <message>[ERROR] OLD JDK [${java.version}] in use. Jetty Release ${project.version} MUST use JDK 17 or newer</message>
                    </requireJavaVersion>
                  </rules>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <inherited>true</inherited>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <executions>
              <execution>
                <id>attach-javadoc-jar</id>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <inherited>true</inherited>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-deploy-plugin</artifactId>
            <configuration>
              <updateReleaseInfo>true</updateReleaseInfo>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>${maven.gpg.plugin.version}</version>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <phase>verify</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>ci</id>
      <properties>
        <surefire.rerunFailingTestsCount>0</surefire.rerunFailingTestsCount>
        <settingsPath>${env.GLOBAL_MVN_SETTINGS}</settingsPath>
        <spotbugs.failOnError>false</spotbugs.failOnError>
        <!-- Defines a SpotBugs threshold. Use "Low" to discover low-priority bugs -->
        <spotbugs.threshold>Medium</spotbugs.threshold>
        <!-- Defines a SpotBugs effort. Use "Max" to maximize the scan depth -->
        <spotbugs.effort>Default</spotbugs.effort>
        <spotbugs.skip>false</spotbugs.skip>
        <spotbugs.onlyAnalyze>org.eclipse.jetty.*</spotbugs.onlyAnalyze>
        <maven.repo.uri></maven.repo.uri>
      </properties>
      <modules>
        <module>javadoc</module>
      </modules>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>com.github.spotbugs</groupId>
              <artifactId>spotbugs-maven-plugin</artifactId>
              <version>${spotbugs.maven.plugin.version}</version>
            </plugin>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-surefire-plugin</artifactId>
              <configuration>
                <excludedGroups>external, large-disk-resource, stress, slow, flaky</excludedGroups>
                <systemPropertyVariables>
                  <env>ci</env>
                  <maven.repo.uri>${maven.repo.uri}</maven.repo.uri>
                  <jetty.testtracker.log>true</jetty.testtracker.log>
                </systemPropertyVariables>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
        <plugins>
          <plugin>
            <groupId>com.github.spotbugs</groupId>
            <artifactId>spotbugs-maven-plugin</artifactId>
            <executions>
              <execution>
                <id>spotbugs</id>
                <goals>
                  <goal>check</goal>
                </goals>
                <phase>verify</phase>
                <configuration>
                  <skip>${spotbugs.skip}</skip>
                  <failOnError>${spotbugs.failOnError}</failOnError>
                  <xmlOutput>true</xmlOutput>
                  <effort>${spotbugs.effort}</effort>
                  <threshold>${spotbugs.threshold}</threshold>
                  <fork>false</fork>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>update-version</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.eclipse.jetty.toolchain</groupId>
            <artifactId>jetty-version-maven-plugin</artifactId>
            <executions>
              <execution>
                <id>gen-versiontxt</id>
                <phase>generate-resources</phase>
                <goals>
                  <goal>update-version-text</goal>
                  <goal>tag</goal>
                </goals>
                <configuration>
                  <refreshTags>true</refreshTags>
                  <copyGenerated>true</copyGenerated>
                  <attachArtifact>false</attachArtifact>
                  <updateDate>true</updateDate>
                  <filenameExcludes>
                    <filenameExclude>jetty-documentation/.*</filenameExclude>
                    <filenameExclude>examples/.*</filenameExclude>
                    <filenameExclude>demos/.*</filenameExclude>
                    <filenameExclude>aggregates/.*</filenameExclude>
                    <filenameExclude>.*/test-.*</filenameExclude>
                    <filenameExclude>.*/.*-test/.*</filenameExclude>
                    <filenameExclude>.*/.*-tests/.*</filenameExclude>
                    <filenameExclude>.*/src/test/.*</filenameExclude>
                    <filenameExclude>\.git.*</filenameExclude>
                    <filenameExclude>.*\.md$</filenameExclude>
                    <filenameExclude>.*\.txt$</filenameExclude>
                    <filenameExclude>Jenkinsfile</filenameExclude>
                  </filenameExcludes>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <!-- This profile is used exclusively on Eclipse CBI.
           Various plugins and artifacts declared here only
           exist on the Eclipse CBI infrastructure. -->
      <id>eclipse-sign</id>
      <activation>
        <property>
          <name>eclipse-sign</name>
        </property>
      </activation>
      <properties>
        <cbi-plugins.version>1.4.2</cbi-plugins.version>
      </properties>
      <build>
        <plugins>
          <plugin>
            <!-- This plugin only exists on Eclipse CBI -->
            <groupId>org.eclipse.cbi.maven.plugins</groupId>
            <artifactId>eclipse-jarsigner-plugin</artifactId>
            <version>${cbi-plugins.version}</version>
            <executions>
              <execution>
                <id>sign</id>
                <phase>package</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
      <pluginRepositories>
        <pluginRepository>
          <id>cbi-releases</id>
          <url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
    <profile>
      <id>snapshot-repositories</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <repositories>
        <repository>
          <id>jetty-snapshots</id>
          <name>jetty-snapshots</name>
          <url>https://oss.sonatype.org/content/repositories/jetty-snapshots</url>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
        <repository>
          <id>oss.snapshots</id>
          <name>OSS Snapshots</name>
          <url>https://oss.sonatype.org/content/repositories/snapshots</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
      </repositories>
    </profile>
    <profile>
      <id>fast</id>
      <properties>
        <skipTests>true</skipTests>
        <checkstyle.skip>true</checkstyle.skip>
        <enforcer.skip>true</enforcer.skip>
        <license.skip>true</license.skip>
        <spotbugs.skip>true</spotbugs.skip>
      </properties>
    </profile>
  </profiles>

  <issueManagement>
    <system>github</system>
    <url>https://github.com/eclipse/jetty.project/issues</url>
  </issueManagement>

  <mailingLists>
    <mailingList>
      <name>Jetty Developer Mailing List</name>
      <archive>https://www.eclipse.org/lists/jetty-dev/</archive>
      <subscribe>https://accounts.eclipse.org/mailing-list/jetty-dev</subscribe>
    </mailingList>
    <mailingList>
      <name>Jetty Users Mailing List</name>
      <archive>https://www.eclipse.org/lists/jetty-users/</archive>
      <subscribe>https://accounts.eclipse.org/mailing-list/jetty-users</subscribe>
    </mailingList>
    <mailingList>
      <name>Jetty Announce Mailing List</name>
      <archive>https://www.eclipse.org/lists/jetty-announce/</archive>
      <subscribe>https://accounts.eclipse.org/mailing-list/jetty-announce</subscribe>
    </mailingList>
  </mailingLists>

  <developers>
    <developer>
      <id>gregw</id>
      <name>Greg Wilkins</name>
      <email>gregw@webtide.com</email>
      <organization>Webtide, LLC</organization>
      <organizationUrl>https://webtide.com</organizationUrl>
      <timezone>10</timezone>
    </developer>
    <developer>
      <id>janb</id>
      <name>Jan Bartel</name>
      <email>janb@webtide.com</email>
      <organization>Webtide, LLC</organization>
      <organizationUrl>https://webtide.com</organizationUrl>
      <timezone>10</timezone>
    </developer>
    <developer>
      <id>jesse</id>
      <name>Jesse McConnell</name>
      <email>jesse.mcconnell@gmail.com</email>
      <organization>Webtide, LLC</organization>
      <organizationUrl>https://webtide.com</organizationUrl>
      <timezone>-6</timezone>
    </developer>
    <developer>
      <id>joakime</id>
      <name>Joakim Erdfelt</name>
      <email>joakim.erdfelt@gmail.com</email>
      <organization>Webtide, LLC</organization>
      <organizationUrl>https://webtide.com</organizationUrl>
      <timezone>-6</timezone>
    </developer>
    <developer>
      <id>sbordet</id>
      <name>Simone Bordet</name>
      <email>simone.bordet@gmail.com</email>
      <organization>Webtide, LLC</organization>
      <organizationUrl>https://webtide.com</organizationUrl>
      <timezone>1</timezone>
    </developer>
    <developer>
      <id>djencks</id>
      <name>David Jencks</name>
      <email>david.a.jencks@gmail.com</email>
      <organization>IBM</organization>
      <timezone>-8</timezone>
    </developer>
    <developer>
      <id>olamy</id>
      <name>Olivier Lamy</name>
      <email>oliver.lamy@gmail.com</email>
      <organization>Webtide, LLC</organization>
      <organizationUrl>https://webtide.com</organizationUrl>
      <timezone>Australia/Brisbane</timezone>
    </developer>
    <developer>
      <id>lorban</id>
      <name>Ludovic Orban</name>
      <email>lorban@bitronix.be</email>
      <organization>Webtide, LLC</organization>
      <organizationUrl>https://webtide.com</organizationUrl>
      <timezone>1</timezone>
    </developer>
  </developers>

  <organization>
    <name>Webtide</name>
    <url>https://webtide.com</url>
  </organization>

  <distributionManagement>
    <repository>
      <id>oss.sonatype.org</id>
      <name>Jetty Staging Repository</name>
      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
    </repository>
    <snapshotRepository>
      <id>oss.sonatype.org</id>
      <name>Jetty Snapshot Repository</name>
      <url>https://oss.sonatype.org/content/repositories/jetty-snapshots/</url>
    </snapshotRepository>
  </distributionManagement>
</project>
