Ich möchte den Pfad einer Datei in einem Verzeichnis finden (ähnlich wie beim Befehl 'find' oder dem Befehl 'what', aber ich brauche ihn plattformunabhängig) und ihn als Eigenschaft speichern.
> Ich habe versucht, die whichresource
ant-Aufgabe zu verwenden, aber es funktioniert nicht (ich denke, es ist nur gut, um in JAR-Dateien zu suchen).
Ich würde es vorziehen, wenn es reine Ameise wäre und nicht meine eigene Aufgabe schreiben oder eine Drittanbieter-Erweiterung verwenden würde.
Beachten Sie, dass es im Pfad mehrere Instanzen einer Datei mit diesem Namen geben kann - ich möchte nur die erste Instanz zurückgeben (oder zumindest nur eine auswählen).
Irgendwelche Vorschläge?
Eine Möglichkeit besteht darin, den Ressourcen-Selektor first
zu verwenden. Zum Beispiel, um eine Datei namens a.jar
irgendwo im Verzeichnis jars
:
Wenn keine übereinstimmenden Dateien vorhanden sind, wird nichts ausgegeben, sonst erhalten Sie den Pfad zur ersten Übereinstimmung.
Hier ist ein Beispiel, das die erste passende Datei auswählt. Die Logik ist wie folgt:
Die Funktionalität ist in einem macrodef zur Wiederverwendbarkeit gekapselt.
%Vor%