This is true in most languages really. It starts with people just wanting to speed up their development by turning common tasks into some macro, or annotation, or even library. But where does it end? It ends in a convoluted mess of dependencies, weird syntax, and hopeless stack traces.
So much work can be done with plain old Java. Or plain old JavaScript. Or plain old C + stdlib.