Thank you for this issue .
"The controllers in Grails 2 and Grails 3 already have dependency injection for GrailsApplication, so you add a second. In Grails 2 it is not typed (def grailsApplication), and in Grails 3 it is typed (GrailsApplication grailsApplication) so you effectively added an override, but with a less specific return type that is invalid. Just remove your def grailsApplication and use one that already exists. "
If you simply remove def grailsApplication from all controllers, it will be fixed.
source share