Friday, September 7, 2012

Strange build problem with Grails 2.0 and plugin dependencies

I am checking out the db-reverse-engineer plugin for Grails 2 and ran into a strange error running.
grails db-reverse-engineer
I reran with this extra option
grails db-reverse-engineer --verbose
This was the output
Base Directory: C:\dev\fourgablesguy
| Loading Grails 2.0.4
* FOURGABLES_REPOSITORY=C:/fourgablesguy
| Configuring classpath.
| Environment set to development.....
| Packaging Grails application.....
| Compiling 1 source files
  [groovyc] Compiling 1 source file to C:\dev\fourgablesguy\target\classes
| Compiling 1 source files.....
     [copy] Copying 1 file to C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy
webxml.WebxmlGrailsPlugin Did not find application config file: WebXmlConfig
| Packaging Grails application.
| Compiling 1 source files
  [groovyc] Compiling 1 source file to C:\dev\fourgablesguy\target\classes
| Compiling 1 source files.....
util.GrailsUtil [DEPRECATED] Property or method [getReference] of class [org.codehaus.groovy.grails.commons.AbstractGrailsClass] is deprecated in [2.0.4] and will be removed in future releases
     [copy] Copying 1 file to C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy
webxml.WebxmlGrailsPlugin Did not find application config file: WebXmlConfig
util.GrailsUtil [DEPRECATED] Property or method [getReference] of class [org.codehaus.groovy.grails.commons.AbstractGrailsClass] is deprecated in [2.0.4] and will be removed in future releases
| Starting database reverse engineering, connecting to 'jdbc:oracle:thin:@192.168.10.89:1522:nddev08' as 'hmcdaniel_fourgablesguy' .....
| Compiling 10 source files
  [groovyc] Compiling 10 source files to C:\dev\fourgablesguy\target\revengclasses
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsCfg2JavaTool.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsEntityPOJOClass.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsJdbcBinder.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsJdbcMetaDataConfiguration.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsPojoExporter.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsReverseEngineeringStrategy.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsTemplateProducer.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\Reenigne.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\RevengRunner.groovy
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\ReverseEngineerProgressListener.groovy
  [groovyc] The option includeAntRuntime cannot be set on the contained  element. The option will be ignored
Unable to obtain resource from C:\Users\fourgablesguy\.grails\ivy-cache\log4j\log4j\jars\log4j-1.2.15.jar: java.util.zip.ZipException: invalid CEN header (bad signature)
  [groovyc] Unable to obtain resource from C:\Users\fourgablesguy\.grails\ivy-cache\log4j\log4j\jars\log4j-1.2.15.jar: 
  [groovyc] java.util.zip.ZipException: invalid CEN header (bad signature)
  [groovyc]  at java.util.zip.ZipFile.open(Native Method)
  [groovyc]  at java.util.zip.ZipFile.(Unknown Source)
  [groovyc]  at java.util.jar.JarFile.(Unknown Source)
  [groovyc]  at org.apache.tools.ant.AntClassLoader.getResourceURL(AntClassLoader.java:1002)
  [groovyc]  at org.apache.tools.ant.AntClassLoader$ResourceEnumeration.findNextResource(AntClassLoader.java:145)
  [groovyc]  at org.apache.tools.ant.AntClassLoader$ResourceEnumeration.(AntClassLoader.java:109)
  [groovyc]  at org.apache.tools.ant.AntClassLoader.findResources(AntClassLoader.java:949)
  [groovyc]  at org.apache.tools.ant.AntClassLoader.findResources(AntClassLoader.java:931)
  [groovyc]  at java.lang.ClassLoader.getResources(Unknown Source)
  [groovyc]  at org.codehaus.groovy.transform.ASTTransformationVisitor.doAddGlobalTransforms(ASTTransformationVisitor.java:194)
  [groovyc]  at org.codehaus.groovy.transform.ASTTransformationVisitor.addGlobalTransforms(ASTTransformationVisitor.java:187)
  [groovyc]  at org.codehaus.groovy.transform.ASTTransformationVisitor.addPhaseOperations(ASTTransformationVisitor.java:150)
  [groovyc]  at org.codehaus.groovy.control.CompilationUnit.(CompilationUnit.java:185)
  [groovyc]  at org.codehaus.groovy.control.CompilationUnit.(CompilationUnit.java:117)
  [groovyc]  at org.codehaus.groovy.tools.javac.JavaAwareCompilationUnit.(JavaAwareCompilationUnit.java:54)
  [groovyc]  at org.codehaus.groovy.ant.Groovyc.makeCompileUnit(Groovyc.java:965)
  [groovyc]  at org.codehaus.groovy.grails.compiler.Grailsc.makeCompileUnit(Grailsc.java:34)
  [groovyc]  at org.codehaus.groovy.ant.Groovyc.compile(Groovyc.java:909)
  [groovyc]  at org.codehaus.groovy.grails.compiler.Grailsc.compile(Grailsc.java:79)
  [groovyc]  at org.codehaus.groovy.ant.Groovyc.execute(Groovyc.java:607)
  [groovyc]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
  [groovyc]  at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
  [groovyc]  at groovy.util.AntBuilder.performTask(AntBuilder.java:260)
  [groovyc]  at groovy.util.AntBuilder.nodeCompleted(AntBuilder.java:220)
  [groovyc]  at groovy.util.BuilderSupport.doInvokeMethod(BuilderSupport.java:147)
  [groovyc]  at groovy.util.AntBuilder.doInvokeMethod(AntBuilder.java:170)
  [groovyc]  at groovy.util.BuilderSupport.invokeMethod(BuilderSupport.java:64)
  [groovyc]  at org.codehaus.gant.GantBuilder.invokeMethod(GantBuilder.java:99)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:45)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
  [groovyc]  at DbReverseEngineer$_run_closure1.doCall(DbReverseEngineer:51)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
  [groovyc]  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:149)
  [groovyc]  at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:133)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:412)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:425)
  [groovyc]  at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
  [groovyc]  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:149)
  [groovyc]  at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:133)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:54)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
  [groovyc]  at org.codehaus.gant.GantBinding$_initializeGantBinding_closure5_closure16_closure18.doCall(GantBinding.groovy:185)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
  [groovyc]  at org.codehaus.gant.GantBinding$_initializeGantBinding_closure5_closure16_closure18.doCall(GantBinding.groovy)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
  [groovyc]  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:412)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:406)
  [groovyc]  at java_util_concurrent_Callable$call.call(Unknown Source)
  [groovyc]  at org.codehaus.gant.GantBinding.withTargetEvent(GantBinding.groovy:90)
  [groovyc]  at org.codehaus.gant.GantBinding.this$4$withTargetEvent(GantBinding.groovy)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
  [groovyc]  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:992)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:697)
  [groovyc]  at groovy.lang.GroovyObjectSupport.invokeMethod(GroovyObjectSupport.java:44)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethodOnGroovyObject(MetaClassImpl.java:1112)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1006)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:149)
  [groovyc]  at org.codehaus.gant.GantBinding$_initializeGantBinding_closure5_closure16.doCall(GantBinding.groovy:185)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
  [groovyc]  at org.codehaus.gant.GantBinding$_initializeGantBinding_closure5_closure16.doCall(GantBinding.groovy)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
  [groovyc]  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:412)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:406)
  [groovyc]  at java_util_concurrent_Callable$call.call(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112)
  [groovyc]  at gant.Gant$_dispatch_closure5.doCall(Gant.groovy:381)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
  [groovyc]  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:412)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:425)
  [groovyc]  at groovy.lang.Closure$call.call(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
  [groovyc]  at gant.Gant$_dispatch_closure7.doCall(Gant.groovy:415)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
  [groovyc]  at gant.Gant$_dispatch_closure7.doCall(Gant.groovy)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
  [groovyc]  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:412)
  [groovyc]  at groovy.lang.Closure.call(Closure.java:406)
  [groovyc]  at java_util_concurrent_Callable$call.call(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112)
  [groovyc]  at gant.Gant.withBuildListeners(Gant.groovy:427)
  [groovyc]  at gant.Gant.this$2$withBuildListeners(Gant.groovy)
  [groovyc]  at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
  [groovyc]  at gant.Gant.dispatch(Gant.groovy:415)
  [groovyc]  at gant.Gant.this$2$dispatch(Gant.groovy)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
  [groovyc]  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
  [groovyc]  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
  [groovyc]  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:699)
  [groovyc]  at gant.Gant.invokeMethod(Gant.groovy)
  [groovyc]  at groovy.lang.GroovyObject$invokeMethod.callCurrent(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:145)
  [groovyc]  at gant.Gant.executeTargets(Gant.groovy:591)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
  [groovyc]  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:145)
  [groovyc]  at gant.Gant.executeTargets(Gant.groovy:590)
  [groovyc]  at org.codehaus.groovy.grails.cli.GrailsScriptRunner.executeWithGantInstance(GrailsScriptRunner.java:693)
  [groovyc]  at org.codehaus.groovy.grails.cli.GrailsScriptRunner.executeScriptFile(GrailsScriptRunner.java:497)
  [groovyc]  at org.codehaus.groovy.grails.cli.GrailsScriptRunner.executeScriptWithCaching(GrailsScriptRunner.java:432)
  [groovyc]  at org.codehaus.groovy.grails.cli.GrailsScriptRunner.callPluginOrGrailsScript(GrailsScriptRunner.java:383)
  [groovyc]  at org.codehaus.groovy.grails.cli.GrailsScriptRunner.executeCommand(GrailsScriptRunner.java:362)
  [groovyc]  at org.codehaus.groovy.grails.cli.GrailsScriptRunner.main(GrailsScriptRunner.java:228)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [groovyc]  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  [groovyc]  at java.lang.reflect.Method.invoke(Unknown Source)
  [groovyc]  at org.codehaus.groovy.grails.cli.support.GrailsStarter.rootLoader(GrailsStarter.java:234)
  [groovyc]  at org.codehaus.groovy.grails.cli.support.GrailsStarter.main(GrailsStarter.java:262)
  [groovyc] org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsReverseEngineeringStrategy.groovy: 19: unable to resolve class org.apache.log4j.Logger
  [groovyc]  @ line 19, column 1.
  [groovyc]    import org.apache.log4j.Logger
  [groovyc]    ^
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsTemplateProducer.groovy: 17: unable to resolve class org.apache.log4j.Logger
  [groovyc]  @ line 17, column 1.
  [groovyc]    import org.apache.log4j.Logger
  [groovyc]    ^
  [groovyc] C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\ReverseEngineerProgressListener.groovy: 17: unable to resolve class org.apache.log4j.Logger
  [groovyc]  @ line 17, column 1.
  [groovyc]    import org.apache.log4j.Logger
  [groovyc]    ^
  [groovyc] 3 errors
| Compiling 10 source files.
| Error Error executing script DbReverseEngineer: : Compilation Failed
: Compilation Failed
 at org.codehaus.groovy.ant.Groovyc.compile(Groovyc.java:924)
 at org.codehaus.groovy.grails.compiler.Grailsc.compile(Grailsc.java:79)
 at org.codehaus.groovy.ant.Groovyc.execute(Groovyc.java:607)
 at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
 at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
 at groovy.util.AntBuilder.performTask(AntBuilder.java:260)
 at groovy.util.AntBuilder.nodeCompleted(AntBuilder.java:220)
 at groovy.util.BuilderSupport.doInvokeMethod(BuilderSupport.java:147)
 at groovy.util.AntBuilder.doInvokeMethod(AntBuilder.java:170)
 at groovy.util.BuilderSupport.invokeMethod(BuilderSupport.java:64)
 at org.codehaus.gant.GantBuilder.invokeMethod(GantBuilder.java:99)
 at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:45)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
 at DbReverseEngineer$_run_closure1.doCall(DbReverseEngineer:51)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
 at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:149)
 at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:133)
 at groovy.lang.Closure.call(Closure.java:412)
 at groovy.lang.Closure.call(Closure.java:425)
 at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
 at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:149)
 at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:133)
 at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
 at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:54)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
 at org.codehaus.gant.GantBinding$_initializeGantBinding_closure5_closure16_closure18.doCall(GantBinding.groovy:185)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226)
 at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
 at org.codehaus.gant.GantBinding$_initializeGantBinding_closure5_closure16_closure18.doCall(GantBinding.groovy)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
 at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.Closure.call(Closure.java:412)
 at groovy.lang.Closure.call(Closure.java:406)
 at java_util_concurrent_Callable$call.call(Unknown Source)
 at org.codehaus.gant.GantBinding.withTargetEvent(GantBinding.groovy:90)
 at org.codehaus.gant.GantBinding.this$4$withTargetEvent(GantBinding.groovy)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
 at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:992)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:697)
 at groovy.lang.GroovyObjectSupport.invokeMethod(GroovyObjectSupport.java:44)
 at groovy.lang.MetaClassImpl.invokeMethodOnGroovyObject(MetaClassImpl.java:1112)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1006)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:149)
 at org.codehaus.gant.GantBinding$_initializeGantBinding_closure5_closure16.doCall(GantBinding.groovy:185)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226)
 at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
 at org.codehaus.gant.GantBinding$_initializeGantBinding_closure5_closure16.doCall(GantBinding.groovy)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
 at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.Closure.call(Closure.java:412)
 at groovy.lang.Closure.call(Closure.java:406)
 at java_util_concurrent_Callable$call.call(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112)
 at gant.Gant$_dispatch_closure5.doCall(Gant.groovy:381)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
 at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.Closure.call(Closure.java:412)
 at groovy.lang.Closure.call(Closure.java:425)
 at groovy.lang.Closure$call.call(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
 at gant.Gant$_dispatch_closure7.doCall(Gant.groovy:415)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226)
 at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
 at gant.Gant$_dispatch_closure7.doCall(Gant.groovy)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
 at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.Closure.call(Closure.java:412)
 at groovy.lang.Closure.call(Closure.java:406)
 at java_util_concurrent_Callable$call.call(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112)
 at gant.Gant.withBuildListeners(Gant.groovy:427)
 at gant.Gant.this$2$withBuildListeners(Gant.groovy)
 at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
 at gant.Gant.dispatch(Gant.groovy:415)
 at gant.Gant.this$2$dispatch(Gant.groovy)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
 at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047)
 at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
 at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:699)
 at gant.Gant.invokeMethod(Gant.groovy)
 at groovy.lang.GroovyObject$invokeMethod.callCurrent(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:145)
 at gant.Gant.executeTargets(Gant.groovy:591)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226)
 at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:145)
 at gant.Gant.executeTargets(Gant.groovy:590)
 at org.codehaus.groovy.grails.cli.GrailsScriptRunner.executeWithGantInstance(GrailsScriptRunner.java:693)
 at org.codehaus.groovy.grails.cli.GrailsScriptRunner.executeScriptFile(GrailsScriptRunner.java:497)
 at org.codehaus.groovy.grails.cli.GrailsScriptRunner.executeScriptWithCaching(GrailsScriptRunner.java:432)
 at org.codehaus.groovy.grails.cli.GrailsScriptRunner.callPluginOrGrailsScript(GrailsScriptRunner.java:383)
 at org.codehaus.groovy.grails.cli.GrailsScriptRunner.executeCommand(GrailsScriptRunner.java:362)
 at org.codehaus.groovy.grails.cli.GrailsScriptRunner.main(GrailsScriptRunner.java:228)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.codehaus.groovy.grails.cli.support.GrailsStarter.rootLoader(GrailsStarter.java:234)
 at org.codehaus.groovy.grails.cli.support.GrailsStarter.main(GrailsStarter.java:262)
Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsReverseEngineeringStrategy.groovy: 19: unable to resolve class org.apache.log4j.Logger
 @ line 19, column 1.
   import org.apache.log4j.Logger
   ^
C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\GrailsTemplateProducer.groovy: 17: unable to resolve class org.apache.log4j.Logger
 @ line 17, column 1.
   import org.apache.log4j.Logger
   ^
C:\Users\fourgablesguy\.grails\2.0.4\projects\fourgablesguy\plugins\db-reverse-engineer-0.4\src\groovy\grails\plugin\reveng\ReverseEngineerProgressListener.groovy: 17: unable to resolve class org.apache.log4j.Logger
 @ line 17, column 1.
   import org.apache.log4j.Logger
   ^
3 errors
 at org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:302)
 at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:858)
 at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:548)
 at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:497)
 at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:480)
 at org.codehaus.groovy.tools.FileSystemCompiler.compile(FileSystemCompiler.java:60)
 at org.codehaus.groovy.tools.FileSystemCompiler.doCompilation(FileSystemCompiler.java:216)
 at org.codehaus.groovy.ant.Groovyc.compile(Groovyc.java:909)
 ... 200 more
| Error Error executing script DbReverseEngineer: : Compilation Failed
This line indicated that my jar for log4j was corrupt?
[groovyc] java.util.zip.ZipException: invalid CEN header (bad signature)
I redownloaded that jar from an internet repository and replace my local copy and reran the command got this instead
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextAware
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClassCond(Unknown Source)
 at java.lang.ClassLoader.defineClass(Unknown Source)
 at java.security.SecureClassLoader.defineClass(Unknown Source)
 at java.net.URLClassLoader.defineClass(Unknown Source)
 at java.net.URLClassLoader.access$000(Unknown Source)
 at java.net.URLClassLoader$1.run(Unknown Source)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Unknown Source)
 at grails.plugin.reveng.Reenigne.class$(Reenigne.groovy)
 at grails.plugin.reveng.Reenigne.$get$$class$grails$util$GrailsUtil(Reenigne.groovy)
 at grails.plugin.reveng.Reenigne.execute(Reenigne.groovy:73)
 at grails.plugin.reveng.Reenigne$execute.call(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112)
 at grails.plugin.reveng.RevengRunner.run(RevengRunner.groovy:81)
 at grails.plugin.reveng.RevengRunner$run.call(Unknown Source)
 at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
 at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
 at grails.plugin.reveng.RevengRunner.main(RevengRunner.groovy:28)
Caused by: java.lang.ClassNotFoundException: org.springframework.context.ApplicationContextAware
 at java.net.URLClassLoader$1.run(Unknown Source)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 ... 27 more
This is due to grails 2.0 being incompatible with db-reverse-engineer plugin, so I downloaded grails 1.3.7 and created a dummy project for that version of grails, installed the db-reverse-engineering plugin 0.3 and ran it successfully from that grails version.
cd C:\dev\
C:\tools\grails-1.3.7\bin\grails create-app dbreveng
cd dbreveng
C:\tools\grails-1.3.7\bin\grails interactive
install-plugin db-reverse-engineer 0.3
integrate-with --eclipse
Import project into SpringSource Tool Suite, you will have to configure STS to be Grails 1.3.7 aware using the dialogs that appear. Using an editor in STS: edit the grails-app/Config.groovy, grails-app/DataSource.groovy with actual database connection. Copy your database jdbc jar into dbreveng/lib you cannot use the 0.4 configuration option
//this does not work on 0.3 version, instead copy your jdbc jar to the project lib 
grails.plugin.reveng.jdbcDriverJarDep = 'com.oracle:ojdbc5:11.2.0.2.0'
db-reverse-engineer --verbose

Welcome to Grails 1.3.7 - http://grails.org/
Licensed under Apache Standard License 2.0
Grails home is set to: C:\Tools\grails-1.3.7\

Base Directory: C:\DEV\sbpsdbreveng
* FOURGABLES_REPOSITORY=C:/fourgablesguy
WARNING: Configurational method [checksums] in grails-app/conf/BuildConfig.groovy doesn't exist. Ignoring..
WARNING: Configurational method [inherits] in grails-app/conf/BuildConfig.groovy doesn't exist. Ignoring..
Resolving dependencies...
Dependencies resolved in 858ms.
Running script C:\Users\fourgablesguy\.grails\1.3.7\projects\sbpsdbreveng\plugins\db-reverse-engineer-0.3\scripts\DbReverseEngineer.groovy
Environment set to development
  [groovyc] Compiling 3 source files to C:\DEV\sbpsdbreveng\target\classes
  [groovyc] Compiling 1 source file to C:\DEV\sbpsdbreveng\target\classes
     [echo] Starting database reverse engineering, connecting to 'jdbc:oracle:thin:@hostname:1521:sid' as 'USERNAME' ...
     [echo] Finished database reverse engineering
Here are my configs for reverse engineering from Oracle 10 db..
grails-app/Config.groovy
grails.plugin.reveng.packageName = 'com.fundtech.sbps.db'
//grails.plugin.reveng.manyToManyBelongsTos = [] 
//grails.plugin.reveng.versionColumns = ''
grails.plugin.reveng.defaultSchema = 'USERNAME'
grails.plugin.reveng.includeTables = ['CUSTOMER']

grails-app/DataSource.groovy
dataSource {
 dbCreate = "create"
 url = "jdbc:oracle:thin:@hostname:1521:sid"
 username = "USERNAME"
 password = "password"
 dialect = org.hibernate.dialect.Oracle10gDialect.class
 properties {
  maxActive = 1000
  maxWait = 5000
  maxIdle = 2
  driverClassName = "oracle.jdbc.OracleDriver"
  validationQuery="SELECT 1 from DUAL"
 }
 loggingSql = true
}

No comments:

About Me

My photo
Lead Java Developer Husband and Father

Tags