Java
Erkannt über Maven- oder Gradle-Dateien. Baut mit einem Wrapper, wenn du einen committest.
Siehe Buildpacksfür Detection und Versionspolitik.
Erkennt
pom.xml (oder polyglot pom.*), build.gradle, build.gradle.kts, settings.gradle, settings.gradle.kts, mvnw oder gradlew.
Versionen
Default ist Java 21. Veröffentlichte Lines Stand September 2026: 11, 17, 21, 25, 26. Du bekommst den neuesten Patch der angefragten Line. Der Build nutzt ein Eclipse-Temurin-JDK. Das Run-Image nutzt die passende JRE.
Pinnen in system.properties:
java.runtime.version=21
Formen wie 21, 21.0.12 oder temurin-21 gehen. Java 8 wird nicht unterstützt.
Install und Build
gradlew:./gradlew build -x test --no-daemonmvnw:./mvnw -B -DskipTests clean package- ein Maven-POM ohne Wrapper: Nodions Maven, dieselben Goals
Ein Gradle-Projekt ohne gradlew scheitert. Den Wrapper committen.
Launch setzt JAVA_HOME auf die JRE und JAVA_TOOL_OPTIONS default auf -XX:MaxRAMPercentage=80.0. Diese Env überschreiben, wenn du anderes Heap-Verhalten brauchst.
Start-Command
java -Dserver.port=$PORT $JAVA_OPTS -jar <jar>. Das Jar ist die größte Datei in target/ oder build/libs/, ohne -plain-, -sources- und -javadoc-Jars. Fehlt eins, eine Procfile ergänzen. Auf PORT lauschen.