(Myself I'm interested to see how well this handles Scala, since avoiding reflection completely is pretty much the norm there).
(Myself I'm interested to see how well this handles Scala, since avoiding reflection completely is pretty much the norm there).
Spring, and Spring Boot most egregiously, work only to widen the gap between devs and ops. The developers have no idea what a Boot app is doing internally for 90% of its stack. The ops guys just want to stably deploy something that is well understood and supportable when it falls over. Not to mention the memory management headaches it introduces...
I moved away from JS early on in my career because it's mostly a disaster waiting to happen, but now the Java devs have the same potential to output a steaming pile of crap that they don't understand.
This is the biggest problem by far with Spring Boot. It’s not just hidden default settings or convention or configuration, it’s entire hidden applications.
Could you elaborate on this?
The dev team refused to accept responsibility as though they hadn't fought tooth and nail to use Spring Boot in the first place.
https://github.com/borkdude/babashka is a good place to start
(or https://github.com/taylorwood/lein-native-image if you are using Leiningen)
How so?
Whereas for me Spring Boot has the same feel as the bad old days of early Spring 3.x - lots of magical constructs that were impossible to understand unless you knew all the Spring specifics. A Spring Boot application will behave completely differently based on just which libraries happen to be on the classpath - the exact same code might start up a tomcat server when run one way and not when run another way - and has a whole host of new Spring-specific things that you have to learn if you're going to understand how your application is behaving.