-
The R1 SPA chunk added a :web Gradle subproject whose npmBuild Exec task runs Vite during :distribution:bootJar. The Dockerfile's build stage uses eclipse-temurin:21-jdk-alpine which has no node/npm, so the docker image CI job fails with: process "/bin/sh -c chmod +x ./gradlew && ./gradlew :distribution:bootJar --no-daemon" did not complete successfully: exit code: 1 Fix: apk add --no-cache nodejs npm before the Gradle build. Alpine 3.21 ships node v22 + npm 10 which Vite 5 + React 18 handle fine. The runtime stage stays a pure JRE image — node is only needed at build time and never makes it into the shipping container.