Führe eine Ant-Task mit Maven aus

Führe eine Ameisen-Aufgabe mit Maven aus

1. Einführung

Maven und Ant sind bekannte Tools zur Build-Automatisierung für Java. Obwohl wir die meiste Zeit nur eine davon verwenden, gibt es Fälle, in denen die Verwendung der beiden zusammen sinnvoll ist.

A common use case is when working on a legacy project that uses Ant, and we want to introduce Maven gradually, während einige vorhandene Ant-Aufgaben beibehalten werden.

In diesem Tutorial erfahren Sie, wie Sie dies mit dem Maven AntRun-Plugin tun.

2. MavenAntRun Plugin

Maven AntRun Plugin ermöglicht es uns, Ant-Tasks in Maven auszuführen.

2.1. Plugin hinzufügen

Um dieses Plugin zu verwenden, müssen wir es zu den Build-Plugins unseres Maven-Projekts hinzufügen:


    org.apache.maven.plugins
    maven-antrun-plugin
    1.8
    
        ...
    

Die neueste Plugin-Version finden Sie aufMaven Central (obwohl sie seit langem nicht mehr aktualisiert wurde).

2.2. Plugin-Ausführungen

Wie bei jedem anderen Maven-Plugin müssen Sie auch für die Verwendung des AntRun-Plugins Ausführungen definieren.

Im folgenden Beispiel definieren wir eine Ausführung, die an Mavenspackage -Sphase gebunden ist und die endgültige JAR-Datei aus dem Zielverzeichnis des Projekts komprimiert:


    org.apache.maven.plugins
    maven-ant-run-plugin
    1.8
    
        
            zip-artifacts
            package
            
                run
            
            
                
                    
                
            
        
    

Um das Plugin auszuführen, führen wir den Befehl aus:

mvn package

Da wir erklärt haben, dass unser Plugin während derpackage-Phase von Maven ausgeführt wird, führt das Ausführen despackage-Ziels von Maven unsere obige Plugin-Konfiguration aus.

3. Beispiel mitbuild.xml Datei

Wir können nicht nur Ant-Ziele in der Plugin-Konfiguration definieren, sondern auch eine vorhandene Antbuild.xml -Datei verwenden.

3.1. build.xml

Unten finden Sie ein Beispiel für die Antbuild.xml-Datei eines Projekts mit einem Ziel, das zum Hochladen von Zip-Dateien aus dem Basisverzeichnis des Projekts auf einen FTP-Server definiert ist:


   Project Description

   ...

    
        
            
            
        
    

3.2. Plugin-Konfiguration

Um die obigebuild.xml-Datei zu verwenden, definieren wir die Ausführung in unserer Plugin-Deklaration:


    deploy-artifact
    install
    
        run
    
    
        
            
                
            
        
    

Da die Aufgabeftpnicht inant.jarenthalten ist, müssen wir die optionalen Abhängigkeiten von Ant zu unserer Plugin-Konfiguration hinzufügen:


    
       ...
    
    
        
            commons-net
            commons-net
            1.4.1
        
        
            org.apache.ant
            ant-commons-net
            1.8.1
        
    

Um das Plugin auszuführen, führen wir den Befehl aus:

mvn install

4. Fazit

In diesem kurzen Artikel haben wir das Ausführen von Ant-Aufgaben mit demAntRun-Plugin von Maven erläutert. Obwohl es sich um ein sehr einfaches Plugin handelt, das nur ein Ziel hat, kann sich dieses Plugin in Projekten und Teams als effektiv erweisen, die die Verwendung von Ant für bestimmte Build-Anweisungen bevorzugen.

Und wenn Sie mehr über Ant und Maven erfahren möchten, können Sie unserearticle lesen und diese beiden vergleichen - zusammen mit Gradle.