web-dev-qa-db-de.com

Wie erstelle ich eine Dose mit externen Bibliotheken, die in Eclipse enthalten sind?

Ich bin fertig mit dem Projekt, das eine Verbindung zur Datenbank (MySQL) herstellt. Nun möchte ich das Projekt als Glas exportieren. Ich weiß nicht, wie ich seine externen Abhängigkeiten einbeziehen soll? Gibt es eine Möglichkeit, dies in Eclipse zu tun, oder sollte ich dafür Skripte verwenden?.

83
Ghanta Sairam

Wenn Sie Ihr Projekt als 'Runable Jar' exportieren (Rechte Maustaste bei Projekt -> Exportieren -> Runable Jar), ​​haben Sie die Möglichkeit, alle Abhängigkeiten in das generierte Jar zu packen. Es gibt auch zwei Möglichkeiten (siehe Screenshot), um Ihre Bibliotheken zu exportieren. Beachten Sie die Lizenzen, wenn Sie entscheiden, welche Verpackungsmethode Sie verwenden möchten. 

Package libraries

Die Dropdown-Liste "Konfiguration starten" wird mit Klassen gefüllt, die eine main(String[])-Methode enthalten. Die ausgewählte Klasse wird gestartet, wenn Sie das Glas ausführen.

Beim Exportieren als ausführbare Dose werden die Abhängigkeiten von Ihrem Erstellungspfad verwendet (rechte Maustaste bei Projekt -> Erstellungspfad -> Erstellungspfad konfigurieren ...). Wenn Sie als "normale" (nicht ausführbare) Dose exportieren, können Sie eine beliebige Datei in Ihrem Projekt auswählen. Wenn Sie die Bibliotheken in Ihrem Projektordner haben, können Sie sie einschließen. Externe Abhängigkeiten, z. B. maven , können jedoch nicht eingeschlossen werden (für Maven-Projekte: search here ). 

132
Joost

Sie können das Export-> Java-> Runnable Jar verwenden, um ein Jar zu erstellen, das seine Abhängigkeiten enthält

Alternativ können Sie auch das fatjar Eclipse - Plugin verwenden, um Gläser zusammenzufassen

8
Attila

Sie können mit der rechten Maustaste auf das Projekt klicken, auf Export klicken, "jar" eingeben und "Runnable JAR File Export" auswählen. Dort haben Sie die Option 'Erforderliche Bibliotheken in generierte JAR extrahieren'.

5
maerch

Persönlich,

Keine der oben genannten Antworten funktionierte für mich. Ich erhielt immer noch NoClassDefFound-Fehler (ich verwende Maven für Abhängigkeiten). Meine Lösung bestand im Erstellen von "mvn clean install" und Verwenden der von diesem Befehl erstellten "[project] -jar-with-dependencies.jar". Auf ähnliche Weise können Sie in Eclipse mit der rechten Maustaste auf das Projekt klicken -> Ausführen als -> Maven-Installation, und die Jars werden im Zielordner abgelegt.

3
SMKS

Wenn Sie alle JAR-Dateien eines Java-Webprojekts exportieren möchten, öffnen Sie die zuletzt erzeugte WAR-Datei mit einem Zip-Tool (z. B. 7-Zip), und navigieren Sie zum Ordner/WEB-INF/lib /. Hier finden Sie alle JAR-Dateien, die Sie für dieses Projekt benötigen (siehe "Referenzierte Bibliotheken").

2
Peter Saitz

Um eine JAR-Datei in Eclipse zu generieren, klicken Sie mit der rechten Maustaste auf das Projekt, für das Sie ein Element erstellen möchten. 

 enter image description here

 enter image description here

Die JAR-Datei enthält alle Abhängigkeiten von Pom.xml. Bitte stellen Sie jedoch sicher, dass ein Lizenzproblem vorliegt, wenn Sie für Ihre Anwendung eine Drittanbieter-Abhängigkeit verwenden.

1
Rohit

Wenn es sich um ein eigenständiges Java-Projekt (Hauptmethode) handelt, müssen Sie bei keinem bestimmten Pfad alle Gläser innerhalb des Projekts platzieren. Klicken Sie dann mit der rechten Maustaste auf das Projekt -> Exportieren -> Runnable jar - Wählen Sie dann das Optionsfeld "Erforderliche Bibliotheken in generiertes Glas packen" -> Fertig stellen.

Oder

Wenn Sie ein Webprojekt haben, legen Sie alle Gläser in den Ordner web-inf/lib und führen Sie den gleichen Schritt aus.

0
JitenS

Achten Sie beim Exportieren der Quelle in ein Glas darauf, dass Sie aus den Optionen eine ausführbare Glasoption auswählen. Wählen Sie dann aus, ob Sie alle Abhängigkeitsgläser packen möchten, oder fügen Sie sie einfach direkt in die JAR-Datei ein. Es hängt von dem Projekt ab, an dem Sie arbeiten.

Sie führen das jar dann direkt mit Java -jar example.jar aus. 

0
Charan Raj