Schließen Sie das Glas vom Ameisenlehrpfad aus

Ich versuche, ein "Clean Maven" -Setup für ein Legacy-Projekt zu erstellen, das Ant-Skripte verwendet. Ich weiß nicht viel über Ameisen, daher mag meine Frage naiv erscheinen.

Ich bin fast fertig, aber das Skript für die Übermittlung der Ameise schlägt aufgrund einer Redundanz im Klassenpfad fehl. Wenn ich den Build verstehe, sollten diese Zeilen jede Bibliothek im "bereitgestellten" Bereich zum Klassenpfad hinzufügen:

<code><artifact:dependencies pathid="dependency.classpath" scopes="provided">
    <pom file="./pom.xml"/>
</artifact:dependencies>
</code>

Und dann dieser:

<code><path id="completecp">
    <fileset dir="${ant.home}/lib">
        <include name="*.jar" />
    </fileset>
    <path refid="dependency.classpath" />
</path>
</code>

Fügen Sie diese Abhängigkeiten zu den Bibliotheken im Verzeichnis ant.home hinzu.

Das Problem ist, dass ich einen Maven-Pom verwende, der von einem Eltern-Pom abhängig ist, den ich nicht ändern kann. Infolgedessen befinden sich DREI verschiedene Versionen von Ant in meinem Klassenpfad: zwei aus dem POM (1.5 und 1.7. 1) und eine aus Eclipse (1.8.2). Ich habe (verzweifelt!) Versucht, einige Maven-Ausschlüsse hinzuzufügen, bin aber kläglich gescheitert.

Also dachte ich mir: Vielleicht gibt es eine Möglichkeit, Gläser vom Ant-Klassenpfad auszuschließen. Ich habe versucht zu setzen:

<code><exclude name="*ant\1.7.1\ant-1.7.1.jar"/>
<exclude name="*ant\1.5\ant-1.5.jar"/>
</code>

im Dateigruppenteil, aber es funktioniert nicht. Gibt es eine Möglichkeit, diese überflüssigen Gläser auszuschließen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage