So erstellen Sie eine Manifestdatei mit Maven

So erstellen Sie eine Manifestdatei mit Maven

Dieses Tutorial zeigt Ihnen, wie Sie mitmaven-jar-plugin eine Manifestdatei erstellen und diese in die endgültige JAR-Datei packen / hinzufügen. Die Manifestdatei wird normalerweise verwendet, um folgende Aufgaben zu definieren:

  1. Definieren Sie den Einstiegspunkt der Anwendung und machen Sie das Jar ausführbar.

  2. Fügen Sie den Klassenpfad für die Projektabhängigkeit hinzu.

Wenn Sie den Befehlmvn package ausführen, um das Projekt in ein Jar zu packen, wird die folgendemeta-inf/manifest.mf-Datei generiert und automatisch zur endgültigen Jar-Datei hinzugefügt.

meta-inf/manifest.mf

Manifest-Version: 1.0
Built-By: ${user.name}
Build-Jdk: ${java.version}
Created-By: Apache Maven
Archiver-Version: Plexus Archiver

1. Machen Sie das Jar ausführbar

Definieren Siemaven-jar-plugin inpom.xml und konfigurieren Sie die Manifestdatei über das Konfigurations-Tag.

pom.xml

    
    org.apache.maven.plugins
    maven-jar-plugin
    2.4
    
      
        
        com.example.core.App
        
      
    
    

Die folgende Manifestdatei wird generiert. Wenn Sie dieses Jar ausführen, werden diecom.example.core.App ausgeführt.

meta-inf/manifest.mf

anifest-Version: 1.0
Built-By: example
Build-Jdk: 1.6.0_35
Created-By: Apache Maven
Main-Class: com.example.core.App
Archiver-Version: Plexus Archiver

2. Fügen Sie den Klassenpfad für die Projektabhängigkeit hinzu.

Die meisten Java-Projekte benötigen Abhängigkeiten und können problemlos in Manifestdateien definiert werden. Normalerweise verwenden Siemaven-dependency-plugin, um Projektabhängigkeiten an eine andere Stelle zu kopieren.

pom.xml

  
    org.apache.maven.plugins
    maven-jar-plugin
    2.4
    
      
        
        true
        com.example.core.App
        dependency-jars/
        
      
    
  
  
    org.apache.maven.plugins
    maven-dependency-plugin
    2.5.1
    
      
        copy-dependencies
        package
        
            copy-dependencies
        
        
            
                          ${project.build.directory}/dependency-jars/
                    
        
        
    
  

Die folgende Manifestdatei wird generiert. Die Projektabhängigkeiten werden nach{project}/target/dependency-jars/ kopiert.

meta-inf/manifest.mf

manifest-Version: 1.0
Built-By: example
Build-Jdk: 1.6.0_35
Class-Path: dependency-jars/log4j-1.2.17.jar
Created-By: Apache Maven
Main-Class: com.example.core.App
Archiver-Version: Plexus Archiver

Quellcode herunterladen

Laden Sie es herunter -Generate-Manifest-Using-Maven.zip (7 KB).