Bitte helfen Sie mir, ich werde ein bisschen verrückt !!
Ich benutze Eclipse-generierte Anti-Dateien, um ein Projekt mit Abhängigkeiten zu erstellen, von denen eines eine eigene Build-Datei in einem Verzeichnis hat, das ein Geschwister für den direkten Vorgänger des von mir erstellten Projekts ist . Z.B. Wenn mein Verzeichnis "/ base / modules / kliniccontext" ist, ist das Verzeichnis einer der Abhängigkeiten einfach "/ base / core" .
Also verwendet die generierte build.xml ../../core welche afaik korrekt ist. Aber es ist nicht!! Aus der Konsole ist ersichtlich, dass Ant drei Ebenen zurückgibt und nicht nur zwei (es gibt FileNotFound auf "/ core / build.xml" ).
Ich habe versucht, den relativen Pfad zu "../ core" zu ändern, und Ant geht auf one Ebene zurück (es klagt ) > "/ base / modules / core" nicht vorhanden). Also wie in der Welt sage ich Ant t gehen zurück durch zwei Ebenen? Ich würde es vorziehen, absolute Pfade zu vermeiden, da ich das Projekt irgendwann auf eine andere Maschine verschieben muss.
Danke allen.
Alle Ant-Pfade sind relativ zu Ihrem aktuellen Arbeitsverzeichnis.
Überprüfen Sie also, in welchem Verzeichnis Sie Ihr Skript ausführen.
Ich schlage vor, dass Sie ${basedir}
verwenden, um einen Pfad relativ zu einem Speicherort von build.xml
zu erhalten.
In Ihrem Fall sollte der relative Pfad wie folgt aufgebaut sein: ${basedir}/../../core
anstelle von ../../core
.
Die Inkonsistenzen, auf die Sie stoßen, illustrieren einen Punkt, warum Eclipse-generierte Ameisen-Skripte ein guter Ausgangspunkt sind, aber niemals ein gutes Projekt-Build-System.
BEARBEITEN . Ich frage mich, warum der Eclipse-Ameisen-Generator ${basedir}
nicht in relative Pfade einfügt? Vielleicht solltest du es als Fehler melden.