Heim >Java >javaLernprogramm >Wie packe ich Abhängigkeiten mit Maven in eine einzelne JAR-Datei?

Wie packe ich Abhängigkeiten mit Maven in eine einzelne JAR-Datei?

Barbara Streisand
Barbara StreisandOriginal
2024-12-22 05:15:111030Durchsuche

How to Package Dependencies into a Single JAR File with Maven?

Abhängigkeiten innerhalb einer JAR mit Maven packen

Problem:

Wie man alle Abhängigkeiten einbezieht in eine einzelne JAR-Datei mit Maven?

Hintergrund:

Ein Projekt ist so konzipiert, dass es in eine einzelne JAR-Datei integriert werden kann. Es besteht jedoch die Notwendigkeit, auch Klassendateien aus den Abhängigkeiten innerhalb der JAR einzubinden.

Lösung:

Mavens Maven-Assembly-Plugin bietet hierfür eine Lösung Erfordernis. Es enthält einen Deskriptor namens „jar-with-dependencies“, der Folgendes ermöglicht:

<plugin>
  <artifactId>maven-assembly-plugin</artifactId>
  <executions>
    <execution>
      <phase>package</phase>
      <goals>
        <goal>single</goal>
      </goals>
    </execution>
  </executions>
  <configuration>
    <descriptorRefs>
      <descriptorRef>jar-with-dependencies</descriptorRef>
    </descriptorRefs>
  </configuration>
</plugin>

Diese Konfiguration entpackt als Abhängigkeiten angegebene JARs und integriert die Klassendateien in die Haupt-JAR. Es mildert die Einschränkungen der Verschachtelung von JAR-Dateien und stellt sicher, dass der gesamte erforderliche Code in der einzigen verteilbaren JAR-Datei gebündelt ist.

Das obige ist der detaillierte Inhalt vonWie packe ich Abhängigkeiten mit Maven in eine einzelne JAR-Datei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn