When you run the app using grails run-app
, GSPs are compiled on the fly when you access it.
So you would see the error if GSP with unclosed tag is accessed.
In case of grails war
, all GSPs have to be compiled and put into resulting war file, therefore any error that prevents any GSP to be compiled is revealed.