With platform threads, a method annotated with @Scheduled keeps an empty Spring Boot application running. When virtual threads are enabled, this is no longer the case and the application stops once it has initialized.
To fix the JVM issue we need to enable the spring.main.keep-alive=true when enable the Virtual threads with the spring boot application.