Using 7.0.59 gives you the following error:
Failed to execute goal org.jasig.mojo.jspc:jspc-maven-plugin:2.0.2:compile (default) on project MY_PROJECT: Execution default of goal org.jasig.mojo.jspc:jspc-maven-plugin:2.0.2:compile failed: An API incompatibility was encountered while executing org.jasig.mojo.jspc:jspc-maven-plugin:2.0.2:compile: java.lang.NoSuchFieldError: loader
If you do, then in org.codehaus.mojo.jspc.compiler.tomcat7.MultiThreadedJspC line 169 will not compile because initServletContext() is not a valid method anymore.
Using 7.0.59 gives you the following error: Failed to execute goal org.jasig.mojo.jspc:jspc-maven-plugin:2.0.2:compile (default) on project MY_PROJECT: Execution default of goal org.jasig.mojo.jspc:jspc-maven-plugin:2.0.2:compile failed: An API incompatibility was encountered while executing org.jasig.mojo.jspc:jspc-maven-plugin:2.0.2:compile: java.lang.NoSuchFieldError: loader
If you do, then in org.codehaus.mojo.jspc.compiler.tomcat7.MultiThreadedJspC line 169 will not compile because initServletContext() is not a valid method anymore.
I believe that it's because of this commit to tomcat https://github.com/apache/tomcat70/commit/28267fd2d338ac649b54a0e0186848ae57e44517
Current TC 7.x is 7.0.68
Aside: why do jspc-compiler-tomcat7 and jspc-compiler-tomcat7-multithreaded use different versions of tomcat?