And, as a bonus, with Java you get real threading, don't spend all day working around single threaded interpreter GILs or dealing with call back hell. You can actually use all the cores on those CPUs, in a single process if you want!
Or maybe not, but just sayin', you're making assumptions in trying to defend Java there. It's enough to say "You don't have to write Java that way", and then find reasons why Java stands on its own ("It's the lingua franca of software development", and related, is the best I can come up with, but eh), rather than attacking a strawman by assuming what traits the language(s) he switched to are and comparing Java against those.
Lein is one of the simplest and sanest build tools I've ever used.
I'm not saying the Java world isn't too complicated (it is) but if you know all the possible problems -- you can keep it sane.
Nowadays, I'm moving slowly to golang. But I don't think I will stop programming in Java. I still think it is a nice language, but if you inherit a project from a "enterprise Java developer" who thinks in EJBs, then just run away :).
For small pieces of code I am aiming to remove the cruft of imports / public static void main....blah blah.