Merge branch 'stable-6.3' into stable-6.4

* stable-6.3:
  MergeToolTest: update expected error from the tool
  Add dash license check for 3rd party dependencies
  Prepare 5.13.5-SNAPSHOT builds
  JGit v5.13.4.202507202350-r
  AmazonS3: Do not accept DOCTYPE and entities
  ManifestParser: Do not accept DOCTYPE and entities
  AdvertisedRequestValidator: fix WantNotValidException caused by race
  Prepare 5.13.4-SNAPSHOT builds
  Fix packaging build

Change-Id: I448bad5c8333607ef5f39ceda70f004ee8a9ba31
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.target
deleted file mode 100644
index d5ee87b..0000000
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.target
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde?>
-<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
-<target name="jgit-4.17" sequenceNumber="1669195943">
-  <locations>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="jakarta.servlet-api" version="4.0.0"/>
-      <unit id="jakarta.servlet-api.source" version="4.0.0"/>
-      <unit id="org.eclipse.jetty.http" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.http.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.io" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.io.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.security" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.security.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.server" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.server.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.servlet" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.servlet.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.ajax" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.ajax.source" version="10.0.6"/>
-      <repository id="jetty-10.0.x" location="https://download.eclipse.org/eclipse/jetty/10.0.6/"/>
-    </location>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="com.google.gson" version="2.9.1.v20220915-1632"/>
-      <unit id="com.google.gson.source" version="2.9.1.v20220915-1632"/>
-      <unit id="com.jcraft.jsch" version="0.1.55.v20221112-0806"/>
-      <unit id="com.jcraft.jsch.source" version="0.1.55.v20221112-0806"/>
-      <unit id="com.jcraft.jzlib" version="1.1.3.v20220502-1820"/>
-      <unit id="com.jcraft.jzlib.source" version="1.1.3.v20220502-1820"/>
-      <unit id="com.sun.jna" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.source" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.platform" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.platform.source" version="5.12.1.v20221103-2317"/>
-      <unit id="javaewah" version="1.1.13.v20211029-0839"/>
-      <unit id="javaewah.source" version="1.1.13.v20211029-0839"/>
-      <unit id="net.bytebuddy.byte-buddy" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy.source" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy-agent" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy-agent.source" version="1.12.18.v20221114-2102"/>
-      <unit id="net.i2p.crypto.eddsa" version="0.3.0.v20220506-1020"/>
-      <unit id="net.i2p.crypto.eddsa.source" version="0.3.0.v20220506-1020"/>
-      <unit id="org.apache.ant" version="1.10.12.v20211102-1452"/>
-      <unit id="org.apache.ant.source" version="1.10.12.v20211102-1452"/>
-      <unit id="org.apache.commons.codec" version="1.14.0.v20221112-0806"/>
-      <unit id="org.apache.commons.codec.source" version="1.14.0.v20221112-0806"/>
-      <unit id="org.apache.commons.compress" version="1.21.0.v20211103-2100"/>
-      <unit id="org.apache.commons.compress.source" version="1.21.0.v20211103-2100"/>
-      <unit id="org.apache.commons.logging" version="1.2.0.v20180409-1502"/>
-      <unit id="org.apache.commons.logging.source" version="1.2.0.v20180409-1502"/>
-      <unit id="org.apache.httpcomponents.httpclient" version="4.5.13.v20221112-0806"/>
-      <unit id="org.apache.httpcomponents.httpclient.source" version="4.5.13.v20221112-0806"/>
-      <unit id="org.apache.httpcomponents.httpcore" version="4.4.15.v20220209-2345"/>
-      <unit id="org.apache.httpcomponents.httpcore.source" version="4.4.15.v20220209-2345"/>
-      <unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
-      <unit id="org.assertj" version="3.20.2.v20210706-1104"/>
-      <unit id="org.assertj.source" version="3.20.2.v20210706-1104"/>
-      <unit id="org.bouncycastle.bcpg" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpg.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpkix" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpkix.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcprov" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcprov.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcutil" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcutil.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
-      <unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
-      <unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
-      <unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
-      <unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
-      <unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
-      <unit id="org.junit" version="4.13.2.v20211018-1956"/>
-      <unit id="org.junit.source" version="4.13.2.v20211018-1956"/>
-      <unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
-      <unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
-      <unit id="org.mockito.mockito-core" version="4.8.1.v20221103-2317"/>
-      <unit id="org.mockito.mockito-core.source" version="4.8.1.v20221103-2317"/>
-      <unit id="org.objenesis" version="3.3.0.v20221103-2317"/>
-      <unit id="org.objenesis.source" version="3.3.0.v20221103-2317"/>
-      <unit id="org.slf4j.api" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.api.source" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.binding.simple" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.binding.simple.source" version="1.7.30.v20221112-0806"/>
-      <unit id="org.tukaani.xz" version="1.9.0.v20210624-1259"/>
-      <unit id="org.tukaani.xz.source" version="1.9.0.v20210624-1259"/>
-      <repository location="https://download.eclipse.org/tools/orbit/downloads/drops/R20221123021534/repository"/>
-    </location>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="org.eclipse.osgi" version="0.0.0"/>
-      <repository location="https://download.eclipse.org/releases/2020-09/"/>
-    </location>
-  </locations>
-</target>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.tpd
deleted file mode 100644
index 60438d7..0000000
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.tpd
+++ /dev/null
@@ -1,8 +0,0 @@
-target "jgit-4.17" with source configurePhase
-
-include "projects/jetty-10.0.x.tpd"
-include "orbit/R20221123021534-2022-12.tpd"
-
-location "https://download.eclipse.org/releases/2020-09/" {
-	org.eclipse.osgi lazy
-}
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.target
deleted file mode 100644
index 36e37b1..0000000
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.target
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde?>
-<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
-<target name="jgit-4.18" sequenceNumber="1669195943">
-  <locations>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="jakarta.servlet-api" version="4.0.0"/>
-      <unit id="jakarta.servlet-api.source" version="4.0.0"/>
-      <unit id="org.eclipse.jetty.http" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.http.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.io" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.io.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.security" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.security.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.server" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.server.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.servlet" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.servlet.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.ajax" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.ajax.source" version="10.0.6"/>
-      <repository id="jetty-10.0.x" location="https://download.eclipse.org/eclipse/jetty/10.0.6/"/>
-    </location>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="com.google.gson" version="2.9.1.v20220915-1632"/>
-      <unit id="com.google.gson.source" version="2.9.1.v20220915-1632"/>
-      <unit id="com.jcraft.jsch" version="0.1.55.v20221112-0806"/>
-      <unit id="com.jcraft.jsch.source" version="0.1.55.v20221112-0806"/>
-      <unit id="com.jcraft.jzlib" version="1.1.3.v20220502-1820"/>
-      <unit id="com.jcraft.jzlib.source" version="1.1.3.v20220502-1820"/>
-      <unit id="com.sun.jna" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.source" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.platform" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.platform.source" version="5.12.1.v20221103-2317"/>
-      <unit id="javaewah" version="1.1.13.v20211029-0839"/>
-      <unit id="javaewah.source" version="1.1.13.v20211029-0839"/>
-      <unit id="net.bytebuddy.byte-buddy" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy.source" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy-agent" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy-agent.source" version="1.12.18.v20221114-2102"/>
-      <unit id="net.i2p.crypto.eddsa" version="0.3.0.v20220506-1020"/>
-      <unit id="net.i2p.crypto.eddsa.source" version="0.3.0.v20220506-1020"/>
-      <unit id="org.apache.ant" version="1.10.12.v20211102-1452"/>
-      <unit id="org.apache.ant.source" version="1.10.12.v20211102-1452"/>
-      <unit id="org.apache.commons.codec" version="1.14.0.v20221112-0806"/>
-      <unit id="org.apache.commons.codec.source" version="1.14.0.v20221112-0806"/>
-      <unit id="org.apache.commons.compress" version="1.21.0.v20211103-2100"/>
-      <unit id="org.apache.commons.compress.source" version="1.21.0.v20211103-2100"/>
-      <unit id="org.apache.commons.logging" version="1.2.0.v20180409-1502"/>
-      <unit id="org.apache.commons.logging.source" version="1.2.0.v20180409-1502"/>
-      <unit id="org.apache.httpcomponents.httpclient" version="4.5.13.v20221112-0806"/>
-      <unit id="org.apache.httpcomponents.httpclient.source" version="4.5.13.v20221112-0806"/>
-      <unit id="org.apache.httpcomponents.httpcore" version="4.4.15.v20220209-2345"/>
-      <unit id="org.apache.httpcomponents.httpcore.source" version="4.4.15.v20220209-2345"/>
-      <unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
-      <unit id="org.assertj" version="3.20.2.v20210706-1104"/>
-      <unit id="org.assertj.source" version="3.20.2.v20210706-1104"/>
-      <unit id="org.bouncycastle.bcpg" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpg.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpkix" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpkix.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcprov" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcprov.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcutil" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcutil.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
-      <unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
-      <unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
-      <unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
-      <unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
-      <unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
-      <unit id="org.junit" version="4.13.2.v20211018-1956"/>
-      <unit id="org.junit.source" version="4.13.2.v20211018-1956"/>
-      <unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
-      <unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
-      <unit id="org.mockito.mockito-core" version="4.8.1.v20221103-2317"/>
-      <unit id="org.mockito.mockito-core.source" version="4.8.1.v20221103-2317"/>
-      <unit id="org.objenesis" version="3.3.0.v20221103-2317"/>
-      <unit id="org.objenesis.source" version="3.3.0.v20221103-2317"/>
-      <unit id="org.slf4j.api" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.api.source" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.binding.simple" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.binding.simple.source" version="1.7.30.v20221112-0806"/>
-      <unit id="org.tukaani.xz" version="1.9.0.v20210624-1259"/>
-      <unit id="org.tukaani.xz.source" version="1.9.0.v20210624-1259"/>
-      <repository location="https://download.eclipse.org/tools/orbit/downloads/drops/R20221123021534/repository"/>
-    </location>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="org.eclipse.osgi" version="0.0.0"/>
-      <repository location="https://download.eclipse.org/releases/2020-12/"/>
-    </location>
-  </locations>
-</target>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.tpd
deleted file mode 100644
index c894dfe..0000000
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.tpd
+++ /dev/null
@@ -1,8 +0,0 @@
-target "jgit-4.18" with source configurePhase
-
-include "projects/jetty-10.0.x.tpd"
-include "orbit/R20221123021534-2022-12.tpd"
-
-location "https://download.eclipse.org/releases/2020-12/" {
-	org.eclipse.osgi lazy
-}
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.target
deleted file mode 100644
index 2966e88..0000000
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.target
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde?>
-<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
-<target name="jgit-4.19-staging" sequenceNumber="1669195941">
-  <locations>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="jakarta.servlet-api" version="4.0.0"/>
-      <unit id="jakarta.servlet-api.source" version="4.0.0"/>
-      <unit id="org.eclipse.jetty.http" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.http.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.io" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.io.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.security" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.security.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.server" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.server.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.servlet" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.servlet.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.ajax" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.ajax.source" version="10.0.6"/>
-      <repository id="jetty-10.0.x" location="https://download.eclipse.org/eclipse/jetty/10.0.6/"/>
-    </location>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="com.google.gson" version="2.9.1.v20220915-1632"/>
-      <unit id="com.google.gson.source" version="2.9.1.v20220915-1632"/>
-      <unit id="com.jcraft.jsch" version="0.1.55.v20221112-0806"/>
-      <unit id="com.jcraft.jsch.source" version="0.1.55.v20221112-0806"/>
-      <unit id="com.jcraft.jzlib" version="1.1.3.v20220502-1820"/>
-      <unit id="com.jcraft.jzlib.source" version="1.1.3.v20220502-1820"/>
-      <unit id="com.sun.jna" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.source" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.platform" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.platform.source" version="5.12.1.v20221103-2317"/>
-      <unit id="javaewah" version="1.1.13.v20211029-0839"/>
-      <unit id="javaewah.source" version="1.1.13.v20211029-0839"/>
-      <unit id="net.bytebuddy.byte-buddy" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy.source" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy-agent" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy-agent.source" version="1.12.18.v20221114-2102"/>
-      <unit id="net.i2p.crypto.eddsa" version="0.3.0.v20220506-1020"/>
-      <unit id="net.i2p.crypto.eddsa.source" version="0.3.0.v20220506-1020"/>
-      <unit id="org.apache.ant" version="1.10.12.v20211102-1452"/>
-      <unit id="org.apache.ant.source" version="1.10.12.v20211102-1452"/>
-      <unit id="org.apache.commons.codec" version="1.14.0.v20221112-0806"/>
-      <unit id="org.apache.commons.codec.source" version="1.14.0.v20221112-0806"/>
-      <unit id="org.apache.commons.compress" version="1.21.0.v20211103-2100"/>
-      <unit id="org.apache.commons.compress.source" version="1.21.0.v20211103-2100"/>
-      <unit id="org.apache.commons.logging" version="1.2.0.v20180409-1502"/>
-      <unit id="org.apache.commons.logging.source" version="1.2.0.v20180409-1502"/>
-      <unit id="org.apache.httpcomponents.httpclient" version="4.5.13.v20221112-0806"/>
-      <unit id="org.apache.httpcomponents.httpclient.source" version="4.5.13.v20221112-0806"/>
-      <unit id="org.apache.httpcomponents.httpcore" version="4.4.15.v20220209-2345"/>
-      <unit id="org.apache.httpcomponents.httpcore.source" version="4.4.15.v20220209-2345"/>
-      <unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
-      <unit id="org.assertj" version="3.20.2.v20210706-1104"/>
-      <unit id="org.assertj.source" version="3.20.2.v20210706-1104"/>
-      <unit id="org.bouncycastle.bcpg" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpg.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpkix" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpkix.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcprov" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcprov.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcutil" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcutil.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
-      <unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
-      <unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
-      <unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
-      <unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
-      <unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
-      <unit id="org.junit" version="4.13.2.v20211018-1956"/>
-      <unit id="org.junit.source" version="4.13.2.v20211018-1956"/>
-      <unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
-      <unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
-      <unit id="org.mockito.mockito-core" version="4.8.1.v20221103-2317"/>
-      <unit id="org.mockito.mockito-core.source" version="4.8.1.v20221103-2317"/>
-      <unit id="org.objenesis" version="3.3.0.v20221103-2317"/>
-      <unit id="org.objenesis.source" version="3.3.0.v20221103-2317"/>
-      <unit id="org.slf4j.api" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.api.source" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.binding.simple" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.binding.simple.source" version="1.7.30.v20221112-0806"/>
-      <unit id="org.tukaani.xz" version="1.9.0.v20210624-1259"/>
-      <unit id="org.tukaani.xz.source" version="1.9.0.v20210624-1259"/>
-      <repository location="https://download.eclipse.org/tools/orbit/downloads/drops/R20221123021534/repository"/>
-    </location>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="org.eclipse.osgi" version="0.0.0"/>
-      <repository location="https://download.eclipse.org/releases/2021-03/"/>
-    </location>
-  </locations>
-</target>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.tpd
deleted file mode 100644
index 6157842..0000000
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.tpd
+++ /dev/null
@@ -1,8 +0,0 @@
-target "jgit-4.19-staging" with source configurePhase
-
-include "projects/jetty-10.0.x.tpd"
-include "orbit/R20221123021534-2022-12.tpd"
-
-location "https://download.eclipse.org/releases/2021-03/" {
-	org.eclipse.osgi lazy
-}
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.target
deleted file mode 100644
index 6e6e7fb..0000000
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.target
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde?>
-<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
-<target name="jgit-4.20" sequenceNumber="1669195941">
-  <locations>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="jakarta.servlet-api" version="4.0.0"/>
-      <unit id="jakarta.servlet-api.source" version="4.0.0"/>
-      <unit id="org.eclipse.jetty.http" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.http.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.io" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.io.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.security" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.security.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.server" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.server.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.servlet" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.servlet.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.source" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.ajax" version="10.0.6"/>
-      <unit id="org.eclipse.jetty.util.ajax.source" version="10.0.6"/>
-      <repository id="jetty-10.0.x" location="https://download.eclipse.org/eclipse/jetty/10.0.6/"/>
-    </location>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="com.google.gson" version="2.9.1.v20220915-1632"/>
-      <unit id="com.google.gson.source" version="2.9.1.v20220915-1632"/>
-      <unit id="com.jcraft.jsch" version="0.1.55.v20221112-0806"/>
-      <unit id="com.jcraft.jsch.source" version="0.1.55.v20221112-0806"/>
-      <unit id="com.jcraft.jzlib" version="1.1.3.v20220502-1820"/>
-      <unit id="com.jcraft.jzlib.source" version="1.1.3.v20220502-1820"/>
-      <unit id="com.sun.jna" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.source" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.platform" version="5.12.1.v20221103-2317"/>
-      <unit id="com.sun.jna.platform.source" version="5.12.1.v20221103-2317"/>
-      <unit id="javaewah" version="1.1.13.v20211029-0839"/>
-      <unit id="javaewah.source" version="1.1.13.v20211029-0839"/>
-      <unit id="net.bytebuddy.byte-buddy" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy.source" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy-agent" version="1.12.18.v20221114-2102"/>
-      <unit id="net.bytebuddy.byte-buddy-agent.source" version="1.12.18.v20221114-2102"/>
-      <unit id="net.i2p.crypto.eddsa" version="0.3.0.v20220506-1020"/>
-      <unit id="net.i2p.crypto.eddsa.source" version="0.3.0.v20220506-1020"/>
-      <unit id="org.apache.ant" version="1.10.12.v20211102-1452"/>
-      <unit id="org.apache.ant.source" version="1.10.12.v20211102-1452"/>
-      <unit id="org.apache.commons.codec" version="1.14.0.v20221112-0806"/>
-      <unit id="org.apache.commons.codec.source" version="1.14.0.v20221112-0806"/>
-      <unit id="org.apache.commons.compress" version="1.21.0.v20211103-2100"/>
-      <unit id="org.apache.commons.compress.source" version="1.21.0.v20211103-2100"/>
-      <unit id="org.apache.commons.logging" version="1.2.0.v20180409-1502"/>
-      <unit id="org.apache.commons.logging.source" version="1.2.0.v20180409-1502"/>
-      <unit id="org.apache.httpcomponents.httpclient" version="4.5.13.v20221112-0806"/>
-      <unit id="org.apache.httpcomponents.httpclient.source" version="4.5.13.v20221112-0806"/>
-      <unit id="org.apache.httpcomponents.httpcore" version="4.4.15.v20220209-2345"/>
-      <unit id="org.apache.httpcomponents.httpcore.source" version="4.4.15.v20220209-2345"/>
-      <unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
-      <unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
-      <unit id="org.assertj" version="3.20.2.v20210706-1104"/>
-      <unit id="org.assertj.source" version="3.20.2.v20210706-1104"/>
-      <unit id="org.bouncycastle.bcpg" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpg.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpkix" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcpkix.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcprov" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcprov.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcutil" version="1.72.0.v20221013-1810"/>
-      <unit id="org.bouncycastle.bcutil.source" version="1.72.0.v20221013-1810"/>
-      <unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
-      <unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
-      <unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
-      <unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
-      <unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
-      <unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
-      <unit id="org.junit" version="4.13.2.v20211018-1956"/>
-      <unit id="org.junit.source" version="4.13.2.v20211018-1956"/>
-      <unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
-      <unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
-      <unit id="org.mockito.mockito-core" version="4.8.1.v20221103-2317"/>
-      <unit id="org.mockito.mockito-core.source" version="4.8.1.v20221103-2317"/>
-      <unit id="org.objenesis" version="3.3.0.v20221103-2317"/>
-      <unit id="org.objenesis.source" version="3.3.0.v20221103-2317"/>
-      <unit id="org.slf4j.api" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.api.source" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.binding.simple" version="1.7.30.v20221112-0806"/>
-      <unit id="org.slf4j.binding.simple.source" version="1.7.30.v20221112-0806"/>
-      <unit id="org.tukaani.xz" version="1.9.0.v20210624-1259"/>
-      <unit id="org.tukaani.xz.source" version="1.9.0.v20210624-1259"/>
-      <repository location="https://download.eclipse.org/tools/orbit/downloads/drops/R20221123021534/repository"/>
-    </location>
-    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
-      <unit id="org.eclipse.osgi" version="0.0.0"/>
-      <repository location="https://download.eclipse.org/releases/2021-06/"/>
-    </location>
-  </locations>
-</target>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.tpd
deleted file mode 100644
index afc5f34..0000000
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.tpd
+++ /dev/null
@@ -1,8 +0,0 @@
-target "jgit-4.20" with source configurePhase
-
-include "projects/jetty-10.0.x.tpd"
-include "orbit/R20221123021534-2022-12.tpd"
-
-location "https://download.eclipse.org/releases/2021-06/" {
-	org.eclipse.osgi lazy
-}
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.target
index edfc027..74e2832 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.target
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.target
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <?pde?>
 <!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
-<target name="jgit-4.21" sequenceNumber="1669195941">
+<target name="jgit-4.21" sequenceNumber="1753106640">
   <locations>
     <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
       <unit id="jakarta.servlet-api" version="4.0.0"/>
@@ -91,7 +91,7 @@
     </location>
     <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
       <unit id="org.eclipse.osgi" version="0.0.0"/>
-      <repository location="https://download.eclipse.org/releases/2021-09/"/>
+      <repository location="https://download.eclipse.org/releases/2021-12/"/>
     </location>
   </locations>
 </target>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.tpd
index b701c81..b20dc41 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.tpd
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.tpd
@@ -3,6 +3,6 @@
 include "projects/jetty-10.0.x.tpd"
 include "orbit/R20221123021534-2022-12.tpd"
 
-location "https://download.eclipse.org/releases/2021-09/" {
+location "https://download.eclipse.org/releases/2021-12/" {
 	org.eclipse.osgi lazy
 }
diff --git a/org.eclipse.jgit.packaging/pom.xml b/org.eclipse.jgit.packaging/pom.xml
index 3ccac7d..4da0b42 100644
--- a/org.eclipse.jgit.packaging/pom.xml
+++ b/org.eclipse.jgit.packaging/pom.xml
@@ -23,9 +23,8 @@
 
   <properties>
     <java.version>11</java.version>
-    <tycho-version>2.7.5</tycho-version>
-    <tycho-extras-version>${tycho-version}</tycho-extras-version>
-    <target-platform>jgit-4.17</target-platform>
+    <tycho-version>4.0.13</tycho-version>
+    <target-platform>jgit-4.21</target-platform>
   </properties>
 
   <pluginRepositories>
@@ -187,6 +186,19 @@
               </rules>
             </configuration>
           </execution>
+          <execution>
+            <id>enforce-java</id>
+            <goals>
+              <goal>enforce</goal>
+            </goals>
+            <configuration>
+              <rules>
+                <requireJavaVersion>
+                  <version>17</version>
+                </requireJavaVersion>
+              </rules>
+            </configuration>
+          </execution>
         </executions>
       </plugin>
       <plugin>
diff --git a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeToolTest.java b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeToolTest.java
index 54c4f26..65c7e9a 100644
--- a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeToolTest.java
+++ b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeToolTest.java
@@ -91,7 +91,7 @@ public void testEmptyToolName() throws Exception {
 
 		createMergeConflict();
 
-		String araxisErrorLine = "compare: unrecognized option `-wait' @ error/compare.c/CompareImageCommand/1123.";
+		String araxisErrorLine = "compare-im6.q16: unrecognized option `-wait' @ error/compare.c/CompareImageCommand/1131.";
 		String[] expectedErrorOutput = { araxisErrorLine, araxisErrorLine, };
 		runAndCaptureUsingInitRaw(Arrays.asList(expectedErrorOutput),
 				MERGE_TOOL, "--no-prompt");
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/gitrepo/ManifestParserTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/gitrepo/ManifestParserTest.java
index 20958a8..c9a0b0b 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/gitrepo/ManifestParserTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/gitrepo/ManifestParserTest.java
@@ -11,12 +11,16 @@
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertThrows;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
 import java.io.ByteArrayInputStream;
+import java.io.File;
 import java.io.IOException;
 import java.net.URI;
+import java.nio.file.Files;
+import java.nio.file.StandardOpenOption;
 import java.util.HashSet;
 import java.util.Set;
 import java.util.stream.Collectors;
@@ -152,4 +156,33 @@ public void testNormalizeEmptyPath() {
 		testNormalize("", "");
 		testNormalize("a/b", "a/b");
 	}
+
+	@Test
+	public void testXXE() throws Exception {
+		File externalEntity = File.createTempFile("injected", "xml");
+		externalEntity.deleteOnExit();
+		Files.write(externalEntity.toPath(),
+				"<evil>injected xml</evil>"
+						.getBytes(UTF_8),
+				StandardOpenOption.WRITE);
+		String baseUrl = "https://git.google.com/";
+		StringBuilder xmlContent = new StringBuilder();
+		xmlContent.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n")
+				.append("<!DOCTYPE booo [ <!ENTITY foobar SYSTEM \"")
+				.append(externalEntity.getPath()).append("\"> ]>\n")
+				.append("<manifest>")
+				.append("<remote name=\"remote1\" fetch=\".\" />")
+				.append("<default revision=\"master\" remote=\"remote1\" />")
+				.append("&foobar;")
+				.append("<project path=\"foo\" name=\"foo\" groups=\"a,test\" />")
+				.append("</manifest>");
+
+		IOException e = assertThrows(IOException.class,
+				() -> new ManifestParser(null, null, "master", baseUrl, null,
+						null)
+						.read(new ByteArrayInputStream(
+								xmlContent.toString().getBytes(UTF_8))));
+		assertTrue(e.getCause().getMessage().contains("DOCTYPE"));
+	}
+
 }
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/ManifestParser.java b/org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/ManifestParser.java
index aa69a05..726c7b4 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/ManifestParser.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/ManifestParser.java
@@ -139,7 +139,17 @@ public void read(InputStream inputStream) throws IOException {
 		xmlInRead++;
 		final XMLReader xr;
 		try {
-			xr = SAXParserFactory.newInstance().newSAXParser().getXMLReader();
+			SAXParserFactory spf = SAXParserFactory.newInstance();
+			spf.setFeature(
+					"http://xml.org/sax/features/external-general-entities", //$NON-NLS-1$
+					false);
+			spf.setFeature(
+					"http://xml.org/sax/features/external-parameter-entities", //$NON-NLS-1$
+					false);
+			spf.setFeature(
+					"http://apache.org/xml/features/disallow-doctype-decl", //$NON-NLS-1$
+					true);
+			xr = spf.newSAXParser().getXMLReader();
 		} catch (SAXException | ParserConfigurationException e) {
 			throw new IOException(JGitText.get().noXMLParserAvailable, e);
 		}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/AmazonS3.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/AmazonS3.java
index 4fec5da..686e9cc 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/AmazonS3.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/AmazonS3.java
@@ -750,8 +750,19 @@ void list() throws IOException {
 
 					final XMLReader xr;
 					try {
-						xr = SAXParserFactory.newInstance().newSAXParser()
-								.getXMLReader();
+						SAXParserFactory saxParserFactory = SAXParserFactory
+								.newInstance();
+						saxParserFactory.setNamespaceAware(true);
+						saxParserFactory.setFeature(
+								"http://xml.org/sax/features/external-general-entities", //$NON-NLS-1$
+								false);
+						saxParserFactory.setFeature(
+								"http://xml.org/sax/features/external-parameter-entities", //$NON-NLS-1$
+								false);
+						saxParserFactory.setFeature(
+								"http://apache.org/xml/features/disallow-doctype-decl", //$NON-NLS-1$
+								true);
+						xr = saxParserFactory.newSAXParser().getXMLReader();
 					} catch (SAXException | ParserConfigurationException e) {
 						throw new IOException(
 								JGitText.get().noXMLParserAvailable, e);
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
index 9b40dfe..a671dac 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
@@ -1959,10 +1959,9 @@ public static final class AdvertisedRequestValidator
 		@Override
 		public void checkWants(UploadPack up, List<ObjectId> wants)
 				throws PackProtocolException, IOException {
-			if (!up.isBiDirectionalPipe())
+			if (!up.isBiDirectionalPipe() || !wants.isEmpty()) {
 				new ReachableCommitRequestValidator().checkWants(up, wants);
-			else if (!wants.isEmpty())
-				throw new WantNotValidException(wants.iterator().next());
+			}
 		}
 	}
 
diff --git a/pom.xml b/pom.xml
index cf51eba..7da25ee 100644
--- a/pom.xml
+++ b/pom.xml
@@ -168,7 +168,6 @@
     <httpcore-version>4.4.15</httpcore-version>
     <slf4j-version>1.7.30</slf4j-version>
     <maven-javadoc-plugin-version>3.3.1</maven-javadoc-plugin-version>
-    <tycho-extras-version>2.6.0</tycho-extras-version>
     <gson-version>2.9.1</gson-version>
     <bouncycastle-version>1.72</bouncycastle-version>
     <spotbugs-maven-plugin-version>4.3.0</spotbugs-maven-plugin-version>
@@ -204,17 +203,9 @@
       <url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
     </pluginRepository>
     <pluginRepository>
-      <id>repo.eclipse.org.cbi-snapshots</id>
-      <url>https://repo.eclipse.org/content/repositories/cbi-snapshots/</url>
-    </pluginRepository>
-    <pluginRepository>
       <id>repo.eclipse.org.dash-releases</id>
       <url>https://repo.eclipse.org/content/repositories/dash-licenses-releases/</url>
     </pluginRepository>
-    <pluginRepository>
-      <id>repo.eclipse.org.dash-snapshots</id>
-      <url>https://repo.eclipse.org/content/repositories/dash-licenses-snapshots/</url>
-    </pluginRepository>
   </pluginRepositories>
 
   <build>
@@ -421,6 +412,19 @@
               </rules>
             </configuration>
           </execution>
+          <execution>
+            <id>enforce-java</id>
+            <goals>
+              <goal>enforce</goal>
+            </goals>
+            <configuration>
+              <rules>
+                <requireJavaVersion>
+                  <version>17</version>
+                </requireJavaVersion>
+              </rules>
+            </configuration>
+          </execution>
         </executions>
       </plugin>