Uploaded image for project: 'Groovy'
  1. Groovy
  2. GROOVY-2418

Nested javac task within groovyc produces class resolving errors

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.5
    • 1.5.1
    • class generator
    • None

    Description

      tried to migrate Grails to use the nested javac task from the
      current ubercompile task (because the uber one generates stubs every
      time and its slow) but I get this error:

      BUILD FAILED
      java.lang.Error: Super-class
      (org.codehaus.groovy.grails.commons.AbstractInjectableGrailsClass)should
      have been resolved already for type:
      org.codehaus.groovy.grails.plugins.web.filters.DefaultGrailsFiltersClass

      class DefaultGrailsFiltersClass  extends AbstractInjectableGrailsClass
      implements GrailsFiltersClass  {
      ..
      }
      

      The actually hierarchy is

      GrailsClass (interface) > AbstractGrailsClass >
      AbstractInjectableGrailsClass > DefaultGrailsFiltersClass

      All are Java except DefaultGrailsFiltersClass which is a Groovy class.

      They're both there in the src paths. It worked before with the
      <ubercompiler> task, but switching to a nested <javac> produces this
      error.

      To reproduce apply this patch to GRAILS_HOME/ant/build/compile.xml and
      run "ant clean jar" from the root of GRAILS_HOME:

      Index: /Developer/grails-dev/grails/ant/build/compile.xml
      ===================================================================
      --- /Developer/grails-dev/grails/ant/build/compile.xml  (revision 6381)
      +++ /Developer/grails-dev/grails/ant/build/compile.xml  (working copy)
      @@ -21,7 +21,7 @@
                  <fileset dir="${grails.src.groovy}" includes="**/*.properties" />
              </copy>
      
      -        <ubercompile destdir="${grails.build}">
      +        <groovyc destdir="${grails.build}" encoding="UTF-8">
                  <classpath>
                      <pathelement location="${grails.build}"/>
                      <path refid="classpath"/>
      @@ -33,15 +33,8 @@
                  <src path="${grails.src.scaffolding}"/>
                  <src path="${grails.src.groovy}"/>
      
      -            <generatestubs destdir="${grails.stubs}">
      -                <configuration targetBytecode="1.4"/>
      -            </generatestubs>
      -
                  <javac includeantruntime="false" deprecation="on"
      debug="yes" source="1.4" target="1.4" fork="true"/>
      -            <groovyc>
      -                <configuration debug="true" verbose="true"/>
      -            </groovyc>
      -        </ubercompile>
      +        </groovyc>
      
      
              <mkdir dir="${grails.build}/META-INF"  />
      
      

      Attachments

        Activity

          People

            blackdrag Jochen Theodorou
            graemerocher Graeme Rocher
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: