web-dev-qa-db-fra.com

Échotant de l'ant Founderset à l'écran de débogage

J'ai ceci:

    <ivy:buildlist reference="build-path">
        <fileset dir="${root.dir}">
            <include name="*/build.xml" />
            <include name="controllers/*/build.xml" />
        </fileset>
    </ivy:buildlist>


    <subant buildpathref="build-path">
        <target name="jar.all" />
        <target name="publish-local" />
    </subant>

Je veux faire écho à tout ce qui se trouve dans la référence "Build-Path" (pour avoir débogué certaines choses).

J'ai essayé:

<echo>${build-path}</echo>

mais cela fait juste écho que le texte exact "$ {build-path}"

40
mainstringargs

Vous pouvez utiliser le documenté (honnête, il est là quelque part ...) toString assistant:

<echo message="My build-path is ${toString:build-path}" />
61
martin clayton

Pour déboguer les fichiers inclus dans votre fichier de fichiers, vous pouvez utiliser cet exemple, qui imprime le contenu d'un fichier de fichiers dans un format lisible:

<?xml version="1.0" encoding="UTF-8"?>
<project name="de.foo.ant" basedir=".">

<!-- Print path manually -->
<target name="print-path-manually" description="" >
    <path id="example.path">
        <fileset dir="${ant.library.dir}"/>
    </path>

    <!-- Format path -->
    <pathconvert pathsep="${line.separator}|   |-- "             
        property="echo.path.compile"             
        refid="example.path">
    </pathconvert>
    <echo>${echo.path.compile}</echo>
</target>

</project>

La sortie est:

Buildfile: D:\Workspaces\IvyTutorial\de.foo.ant\prettyPrintPath.xml
print-path-manually:
 [echo] D:\Programme\Eclipse-rcp-helios-SR1-win32\Eclipse\plugins\org.Apache.ant_1.7.1.v20100518-1145\lib\ant-antlr.jar
 [echo] |   |-- D:\Programme\Eclipse-rcp-helios-SR1-win32\Eclipse\plugins\org.Apache.ant_1.7.1.v20100518-1145\lib\ant-Apache-bcel.jar
 [echo] |   |-- D:\Programme\Eclipse-rcp-helios-SR1-win32\Eclipse\plugins\org.Apache.ant_1.7.1.v20100518-1145\lib\ant-Apache-bsf.jar
 [echo] |   |-- D:\Programme\Eclipse-rcp-helios-SR1-win32\Eclipse\plugins\org.Apache.ant_1.7.1.v20100518-1145\lib\ant-Apache-log4j.jar
 [echo] |   |-- D:\Programme\Eclipse-rcp-helios-SR1-win32\Eclipse\plugins\org.Apache.ant_1.7.1.v20100518-1145\lib\ant-Apache-oro.jar
 [echo] |   |-- D:\Programme\Eclipse-rcp-helios-SR1-win32\Eclipse\plugins\org.Apache.ant_1.7.1.v20100518-1145\lib\ant-Apache-regexp.jar
 [echo] |   |-- D:\Programme\Eclipse-rcp-helios-SR1-win32\Eclipse\plugins\org.Apache.ant_1.7.1.v20100518-1145\lib\ant-Apache-resolver.jar
....
24
Frank

Activer la journalisation du débogage de la fourmi:

$ ant -h
ant [options] [target [target2 [target3] ...]]
Options:
...
  -verbose, -v           be extra verbose
  -debug, -d             print debugging information

Notez que cela générera une tonne de sortie, il peut donc être préférable de capturer la sortie dans un fichier, puis de trouver les informations de fichier de fichiers dans un éditeur de texte:

ant -debug compile > ant-out.txt
9
matt b