Spring (and particularly Spring Boot) requires no XML for configuration — everything can be done with annotations and plain Java (or Kotlin).
You can set them up other ways, but it just ends up making a lot of sense to define them there.
To be fair, Ktor is pretty similar with the "application.conf" if you use the built-in Profiles equivalent: https://ktor.io/docs/configurations.html#hocon-overview
I just prefer that if I'm using DI, the concept of environments be handled by DI. Scoping is what DI does best after all...