Ce chemin de classe dont j'ai besoin pour une Fourmi taskdef?
Je suis nouveau sur Ant.
Quelqu'un peut-il me dire de quel valeur mettre pour le "classpathref" pour taskdef?
Sera-ce le chemin d'accès du fichier de classe?
Si oui peut un exemple être donné, car j'ai essayé et sa ne marche pas pour moi.
Dans le taskdef, le classpathref doit être une référence à un définies précédemment path.
Le chemin d'accès doit inclure une archive jar qui contient la classe la mise en œuvre de la tâche,
ou il doit pointer vers le répertoire dans le système de fichiers que est le racine de la hiérarchie de classe.
Ce ne serait pas le répertoire qui contient votre classe, si votre classe réside dans un package.
Voici un exemple.
MyTask.java:
package com.x.y.z;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
public class MyTask extends Task
{
//The method executing the task
public void execute() throws BuildException {
System.out.println( "MyTask is running" );
}
}
Noter que le nom du package est com.x.y.z, de sorte que lorsqu'il est déployé -
permet de dire que les classes sont mis dans un répertoire appelé classes, pourrions - nous voir la classe ici dans le système de fichiers:
Dans le taskdef, le
classpathref
doit être une référence à un définies précédemmentpath
.Le chemin d'accès doit inclure une archive jar qui contient la classe la mise en œuvre de la tâche,
ou il doit pointer vers le répertoire dans le système de fichiers que est le racine de la hiérarchie de classe.
Ce ne serait pas le répertoire qui contient votre classe, si votre classe réside dans un package.
Voici un exemple.
MyTask.java:
Noter que le nom du package est
com.x.y.z
, de sorte que lorsqu'il est déployé -permet de dire que les classes sont mis dans un répertoire appelé
classes
, pourrions - nous voir la classe ici dans le système de fichiers:Ici est un simple build.xml qui utilise la tâche:
Noter que le
classpathref
points donnés à laclasses
répertoire à la racine de la hiérarchie de classe.Lors de l'exécution, nous obtenons:
Vous pouvez faire la même à l'aide d'un explicite
classpath
, plutôt que d'un "classpathref', par exemple:OriginalL'auteur martin clayton