Integration tests fail: test-service-broker.jar incompatible with java-buildpack v5 (JDK 17 default)
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- Ein halber Tag
- Anfängerfreundlichkeit
- 74/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- java, spring-boot
- Bereich
- backend, testing-qa
Rechercherichtung
Beginne in integration-test/src/test/java/org/cloudfoundry/ServiceBrokerUtils.java bei pushServiceBrokerApplication(), untersuche anschließend ApplicationUtils.java und den Kontext von test-service-broker.jar. Führe die Integrationstests aus, die von serviceBrokerId abhängen, und bestätige, dass der Broker unter java-buildpack v5/JDK 17 ohne DelayTimeoutException startet.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
On March 20-21, 2026, the java-buildpack main branch was updated to v5.0.1, which defaults to JDK 17 (up from JDK 8 in v4.x).
The integration tests hardcode buildpack("https://github.com/cloudfoundry/java-buildpack.git") in ApplicationUtils.java:230, so they now get JDK 17. The bundled test-service-broker.jar is a Spring Boot 1.5.16 app (built ~2018) that relies on CGLIB reflective access incompatible with JDK 17's module system. The app crashes on startup with InaccessibleObjectException, causing DelayTimeoutException and failing all tests that depend on serviceBrokerId.
Workaround
Add --add-opens flags to the service broker environment in ServiceBrokerUtils.pushServiceBrokerApplication():
env.put("JAVA_OPTS",
"--add-opens java.base/java.lang=ALL-UNNAMED"
+ " --add-opens java.base/java.io=ALL-UNNAMED");
Potential longer-term fixes
- Rebuild test-service-broker.jar with a modern Spring Boot version
- Pin the buildpack to a version tag or use the system buildpack instead of tracking main
- Vorherrschende Sprache
- Java
- Sterne
- 334
- Forks
- 319
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus cloudfoundry/cf-java-client
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
cloudfoundry/cf-java-client#1374 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
cloudfoundry/cf-java-client#1376 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 15/100
cloudfoundry/cf-java-client#1373 ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
cloudfoundry/cf-java-client#1370 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
cloudfoundry/cf-java-client#1367 ·
Alle Issues in cloudfoundry/cf-java-client
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
infinispan/infinispan#18150 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
-
untriaged
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
opensearch-project/k-NN#3597 ·
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100