We currently pay a large complexity cost due to SpringApplication supporting lots of different sources. We'd like to change things so that there is just a single source. This would mean:

  • We no longer need to stack-walk to find the main class
  • Direct XML resources would not be supported (use @ImportResource)
  • Package sources would not be supported (use @ComponentScan)

This will also help us to remove AotProcessor.getActive(...) which was a bit of a hack added to support management contexts with AOT.

Comment From: philwebb

It turns out this is quite hard so we're going to focus instead on the main method detection code.