When you precompile a large set of JSPs and the compile fails for a file, jspc doesn't print the name of the file, so you have no idea which JSP is broken. All you get is the name of the last *successfully* compiled JSP if you make it verbose (so the error is in the *next* file which isn't listed). Either print the name of each JSP as you compile it or print the name when you encounter an error.
This is a good idea, and it's something that bugged me for a while as well. I've gone ahead and added DEBUG-level logging statements to JspC so that you know which file it's processing. You need to enable DEBUG-level logging for this class to see the output: see http://tomcat.apache.org/tomcat-5.5-doc/logging.html for directions.
In case of an error, the compiler should always print the filename. I know the code is a bit of a mess in that respect but still, it shouldn't be necessary to run maven again in debug mode just to find out which of my 200 files is broken.
With the latest 5.5.x and latest trunk (so I assume 6.0.x and 7.0.x are the same) an invalid JSP triggers a stack trace that names the broken file and the point where the error occurs. A JSP the can be converted to a .java file but then fails to compile reports an error that includes the java class name which is sufficient to identify the source of the error.