Hier fassen wir die verschiedenen Möglichkeiten zusammen, um IDEA zum Verpacken von JAR -Paketen zu verwenden. Sie können auf das folgende Formular für zukünftige Projekte verweisen, um JAR -Pakete zu verpacken:
Verwenden Sie die eigene Verpackungsmethode von Idea:
Öffnen Sie die Datei -> Projektstruktur der Idea und geben Sie die Seite der Projektkonfiguration ein. Wie in der Abbildung unten gezeigt:
Klicken Sie auf Artefakte , um die Seite "Artefacts Configuration" einzugeben. Klicken Sie auf + und wählen Sie die Optionen in der Abbildung unten aus.
Geben Sie die Seite "Jar Create Jar From Module" ein und konfigurieren Sie es wie in der folgenden Abbildung gezeigt.
Nach dem Klicken auf OK wird die folgende Schnittstelle angezeigt. Klicken Sie mit der rechten Maustaste <Ausgabe von Root>, klicken Sie auf Verzeichnis erstellen , eine LIBS erstellen und alle Gläser von Drittanbietern in das LIBS-Verzeichnis geben.
Nach Erfolg, wie in der folgenden Abbildung gezeigt:
Klicken Sie nach dem Einsetzen auf den Namen des Glass, das wir eingeben möchten, nämlich Kafka-cps.jar und wählen Sie den Klassenpfad für die Konfiguration.
Die bearbeiteten Ergebnisse sind wie folgt:
Alle Gläser sind in libs/ . Klicken Sie auf OK , um zur Konfigurationsseite zurückzukehren.
Gleichzeitig beachten
Klicken Sie schließlich auf der Konfigurationsseite auf OK , um die Konfiguration zu vervollständigen. Zurück zur Idee, klicken Sie auf Build-> Build-Artefakte und wählen Sie Build aus
Das von uns benötigte JAR -Paket wird generiert. Sein Standort ist in /out/artifacts/kafka_cps_jar im Out -Verzeichnis des Projektverzeichnisses.
Das Folgende ist ein korrekt konfigurierter Manifest -Dateiinhalt
Paket mit Maven-Shade-Plugin
Der obige Verpackungsprozess ist wirklich zu umständlich und nutzt die Funktionen von Maven -Management -Projekten nicht. Dazu verwenden wir hier das Maven-Shade-Plugin-Plugin in Maven. In pom.xml fügen wir die folgenden Informationen hinzu, um das Plugin hinzuzufügen.
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>1.4</version> <configuration><createDependencyReducedPom>true</createDependencyReducedPom> </configuration> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformators> <transformator implementierung
Es enthält ein "Konfigurations" -Tag. Unter diesem Tag befindet sich ein Transformator -Tag, um den Eingang zur Hauptfunktion zu konfigurieren ( <Annclass> main.main </machclass> ). Natürlich ist der Inhalt dieses Tags sehr kompliziert und nicht so einfach wie oben geschrieben. Der Grund, warum das oben genannte so einfach ist, ist, dass es in allen Klassen nur eine Hauptmethode gibt (einschließlich Gläsern von Drittanbietern). Wenn in einem Drittanbieter eine Hauptmethode vorhanden ist, ist eine zusätzliche Konfiguration erforderlich. Die obige Konfiguration ist möglicherweise nicht erfolgreich.
Nachdem wir diesen Code zu pom.xml hinzugefügt haben, können wir den Befehl maven verwenden, um ihn zu verpacken. Die Anweisungen sind wie folgt:
MVN Clean Compile // Löschen Sie die vorherige Zielkompilierdatei und das Neukompilieren von MVN Clean Package // Packen Sie das Projekt (weil das Plug-In konfiguriert ist, das JAR-Paket ausführbar) MVN Clean Install // Installe das Projekt und dann können Sie es verwenden, und dann können Sie es verwenden
Dann führen Sie es durch Java-Jar CPS-1.0-Snapshot.jar .
Wenn Sie Idee verwenden, können Sie das mitgelieferte Maven -Verwaltungs -Tool verwenden, um stattdessen den obigen Befehl auszuführen. Klicken Sie wie in der Abbildung unten auf das blaue Teil.
Paket mit Maven-Assembly-Plugin
Wir müssen auch auf viele Befehle klicken, um die obige Methode zu verpacken. Dieses Mal kann es einfacher sein, ein neues Plug-In zu verpacken. In ähnlicher Weise fügen Sie den folgenden Code zu pom.xml hinzu. Der obige Maven-Shade-Plugin-Plugin-Code kann gelöscht werden. Es ist am besten, 2 Plug-in-Codes nicht zu schreiben.
<plugin> <artifactId>maven-assembly-plugin</artifactId> <version>2.4</version> <configuration> <descriptorRefs> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>Main.Main</mainClass> </manifest> </archiv> </configuration> <cecution> <ID> Make-assembly </id> <phase> Paket </Phase> <grosss> <giels> Single </Ziel> </Ziele> </Execution> </Executions> </plugin>
Hier ist auch ein offenbares Tag, um den Eingang zur Hauptfunktion zu konfigurieren. Verwenden Sie dann die folgenden Anweisungen, um die Verpackung zu realisieren.
mvn assembly:assembly
Wenn Sie Idee verwenden, können Sie das mitgelieferte Maven -Verwaltungs -Tool verwenden, um stattdessen den obigen Befehl auszuführen. Klicken Sie wie in der Abbildung unten auf den blauen Abschnitt.
Dann ausgeführt, indem Sie Java-Jar CPS-1.0-Snapshot-Jar-with-Abhängigkeiten ausführen.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels für das Studium oder die Arbeit eines jeden hilfreich sein wird. Ich hoffe auch, Wulin.com mehr zu unterstützen!