diff --git a/run/helloworld/Dockerfile b/run/helloworld/Dockerfile
index 19f125ef8e9..1396b214fd3 100644
--- a/run/helloworld/Dockerfile
+++ b/run/helloworld/Dockerfile
@@ -15,7 +15,7 @@
# [START cloudrun_helloworld_dockerfile]
# Use the official maven image to create a build artifact.
# https://hub.docker.com/_/maven
-FROM maven:3-eclipse-temurin-17-alpine as builder
+FROM maven:3-eclipse-temurin-25-alpine as builder
# Copy local code to the container image.
WORKDIR /app
@@ -27,7 +27,7 @@ RUN mvn package -DskipTests
# Use Eclipse Temurin for base image.
# https://docs.docker.com/develop/develop-images/multistage-build/#use-multi-stage-builds
-FROM eclipse-temurin:17.0.18_8-jre-alpine
+FROM eclipse-temurin:25-jre-alpine
# Copy the jar to the production image from the builder stage.
COPY --from=builder /app/target/helloworld-*.jar /helloworld.jar
diff --git a/run/helloworld/pom.xml b/run/helloworld/pom.xml
index 70e213d033f..0242b3f715e 100644
--- a/run/helloworld/pom.xml
+++ b/run/helloworld/pom.xml
@@ -24,7 +24,7 @@ limitations under the License.
com.google.cloud.samples
shared-configuration
- 1.2.0
+ 1.2.2
@@ -41,9 +41,10 @@ limitations under the License.
UTF-8
UTF-8
- 17
- 17
- 3.2.2
+
+ 21
+ 21
+ 3.5.0
@@ -68,6 +69,11 @@ limitations under the License.
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.8.14
+
org.springframework.boot
spring-boot-maven-plugin
@@ -84,8 +90,11 @@ limitations under the License.
com.google.cloud.tools
jib-maven-plugin
- 3.4.0
+ 3.4.6
+
+ eclipse-temurin:25-jre-alpine
+
gcr.io/PROJECT_ID/helloworld
diff --git a/run/helloworld/src/test/java/com/example/helloworld/HelloworldApplicationTests.java b/run/helloworld/src/test/java/com/example/helloworld/HelloworldApplicationTests.java
index c35e651b6bc..ede94413142 100644
--- a/run/helloworld/src/test/java/com/example/helloworld/HelloworldApplicationTests.java
+++ b/run/helloworld/src/test/java/com/example/helloworld/HelloworldApplicationTests.java
@@ -20,15 +20,12 @@
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.servlet.MockMvc;
-@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc
public class HelloworldApplicationTests {