groovy innen ant: wie refids von grooy zuzugreifen, die von ant-Tags definiert werden

StackOverflow https://stackoverflow.com/questions/225063

  •  03-07-2019
  •  | 
  •  

Frage

Ich bin mit einem groovy Code-Schnipsel in einer Ameise-Build-Datei. Innerhalb des groovy Code Ich versuche, eine fileset zu verweisen, die außerhalb des groovy Teil definiert ist, wie folgt aus:

<target name="listSourceFiles" >
    <fileset id="myfileset" dir="${my.dir}">
         <patternset refid="mypatterns"/>
    </fileset>
    <groovy>
        def ant = new AntBuilder()

        scanner = ant.fileScanner {
            fileset(refid:"myfileset")
        }

    ...
    </groovy>
</target>

Wenn ich ausführen dieses ich die folgende Fehlermeldung:

Buildfile: build.xml

listSourceFiles:   
   [groovy]

BUILD FAILED
d:\workspace\Project\ant\build.xml:13:
Reference myfileset not found.

Was bin ich fehlt?

War es hilfreich?

Lösung

Nach der Groovy Ant-Task Dokumentation, einer der Bindungen für die groovy Aufgabe der Strom AntBuilder , ant.

Ihr Skript So Modifizieren der kollidierende ‚Ameise‘ fallen def habe ich es ohne Fehler auszuführen:

<project name="groovy-build" default="listSourceFiles">

<taskdef name="groovy"
         classname="org.codehaus.groovy.ant.Groovy"/>

<patternset id="mypatterns">
  <include name="../*.groovy"/>
</patternset>
<target name="listSourceFiles" >
    <fileset id="myfileset" dir="${my.dir}">
         <patternset refid="mypatterns"/>
    </fileset>
    <groovy>
        scanner = ant.fileScanner {
            fileset(refid:"myfileset")
        }
    </groovy>
</target>
</project>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top