Na aula do modulo 05, quando é solicitado a compilação do metodo main é gerado o seguinte erro:
Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForRealName(JRClassLoader.java:157)
at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForName(JRClassLoader.java:115)
at net.sf.jasperreports.engine.JasperCompileManager.getCompiler(JasperCompileManager.java:730)
at net.sf.jasperreports.engine.JasperCompileManager.compile(JasperCompileManager.java:240)
at net.sf.jasperreports.engine.JasperCompileManager.compileToFile(JasperCompileManager.java:156)
at net.sf.jasperreports.engine.JasperCompileManager.compileToFile(JasperCompileManager.java:115)
at net.sf.jasperreports.engine.JasperCompileManager.compileReportToFile(JasperCompileManager.java:415)
at br.com.caelum.financas.relatorio.TesteGeraRelatorio.main(TesteGeraRelatorio.java:15)
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.control.CompilationFailedException
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
... 10 more
Para resolver o problema é preciso abrir o arquivo financas.jrxml, procurar por language (segunda linha do arquivo), o valor vai estar como groovy, neste caso é preciso alterar para java ficando da seguinte forma:
language="java"
Apos feito isso salve o arquivo, e rode novamente o metodo main, nenhuma exception deve aparecer.
Obs: Erro emitido no Eclipse, não sei se em outras IDE's será o mesmo erro, porem se for será preciso realizar os passos acima para resolver o problema.