Verwendung des Maven Exec Plugins zum Ausführen von Java-Programmen

Das Maven Exec Plugin ist ein vielseitiges Tool, mit dem Sie Java- und Systemprogramme direkt aus Ihrem Maven-Build-Prozess ausführen können. In diesem Tutorial erfahren Sie, wie Sie das Plugin konfigurieren und verwenden, wobei der Schwerpunkt auf dem Ziel exec:java liegt, mit dem ein Java-Programm innerhalb derselben JVM auszuführen sind.

Das Maven Exec Plugin bietet zwei Hauptziele:

  • exec:exec: Führt ein beliebiges externes Programm in einem separaten Prozess aus.
  • exec:java: Führt ein Java-Programm innerhalb derselben virtuellen Maschine (VM) wie der Maven-Build aus.

In diesem Tutorial konzentrieren wir uns auf die Einrichtung und Verwendung des Ziels exec:java.

Schritt 1: Konfigurieren des Plugins in pom.xml

Um das Maven Exec Plugin zu verwenden, muss es zuerst im build-Abschnitt Ihrer pom.xml-Datei konfiguriert werden. Unten finden Sie ein Beispiel für die erforderliche Konfiguration:

    org.codehaus.mojo
    exec-maven-plugin
    1.6.0
    
        com.example.maven.utils.BuildInfo
    

Der entscheidende Teil dieser Konfiguration ist das Element <mainClass>, in dem der vollständig qualifizierte Name der Java-Klasse angegeben wird, die vom Ziel exec:java ausgeführt werden soll.

Schritt 2: Schreiben der Java-Klasse

Hier ist eine Beispiel-Java-Klasse BuildInfo, die die Java-Version und die aktuelle Uhrzeit ausgibt:

package com.example.maven.utils;

import java.time.LocalDateTime;

public class BuildInfo {

    public static void main(String[] args) {
        String javaVersion = Runtime.version().toString();
        String time = LocalDateTime.now().toString();
        System.out.println("********\nBuild Time: " + time 
                + "\nJava Version: " + javaVersion + "\n********");
    }
}

Schritt 3: Ausführen des Builds mit dem Ziel exec:java

Sobald das Plugin konfiguriert und die Java-Klasse geschrieben ist, können Sie den Maven-Build mit dem folgenden Befehl ausführen:

Nach erfolgreicher Ausführung sollte die Ausgabe in etwa wie folgt aussehen:

[INFO] Scanning for projects...
[INFO] 
[INFO] ---------------< com.example.maven:maven-demo >---------------
[INFO] Building maven-demo 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- exec-maven-plugin:1.6.0:java (default-cli) @ maven-demo ---
********
Build Time: 2024-11-18T14:30:00
Java Version: 17.0.7
********
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.721 s
[INFO] Finished at: 2024-11-18T14:30:00+01:00
[INFO] ------------------------------------------------------------------------

Zusammenfassung

Das Maven Exec Plugin vereinfacht das Ausführen von Java-Programmen direkt aus Ihrem Maven-Build. Durch die korrekte Konfiguration des Plugins in pom.xml und die Angabe der Java-Klasse im Element <mainClass> können Sie Java-Code schnell und ohne zusätzliche Skripte oder Tools ausführen. Diese Funktionalität ist besonders nützlich für Aufgaben wie das Testen, die Validierung von Build-Informationen während der Entwicklung, die Automatisierung sich wiederholender Aufgaben oder die Integration benutzerdefinierter Logik in Ihren Build-Prozess. Das Tool gewährleistet einen nahtlosen und effizienten Workflow und ist ein unverzichtbares Werkzeug für alle Entwickler, die komplexe Java-Projekte verwalten.

Kostenlosen Account erstellen

Registrieren Sie sich jetzt und erhalten Sie Zugang zu unseren Cloud Produkten.

Das könnte Sie auch interessieren:

centron Managed Cloud Hosting in Deutschland

Java-Array: So prüfst du Werte effizient

JavaScript
Wie prüft man, ob ein Java Array einen Wert enthält? Es gibt viele Möglichkeiten, um zu überprüfen, ob ein Java Array einen bestimmten Wert enthält. Einfache Iteration mit einer for-Schleife…