Wie füge ich meine externe JAR-Datei zum Klassenpfad hinzu

8

Ich bin neu in maven Umgebung, brauche einige Hilfe. Habe meine externe JAR-Datei (directoryhelper.jar) im lib-Ordner hinzugefügt, wie unten in pom.xml

%Vor%

Kompilierung ist erfolgreich, aber während der Laufzeit bekomme ich java.lang.NoClassDefFoundError.

wie Sie die Verzeichnishelper.jar zum Klassenpfad hinzufügen.

    
prGD 24.08.2013, 04:04
quelle

2 Antworten

2

Maven out of the box wird eine JAR-Datei (Standardverpackung) enthalten. Diese JAR-Datei enthält nur ( main ) Artefakte des Projekts. Wenn du genau das nimmst und es ausführst, fehlen eindeutig die Abhängigkeiten - per Design.

Normalerweise werden Maven-Artefakte in Kombination mit ihrem POM wiederverwendet, so dass sie am Verwendungsort wissen, welche Abhängigkeiten bestehen. Edit: Wenn Sie APKs verwenden und sie auf einem Telefon installieren, kann es Mechanismen geben, mit Abhängigkeiten umzugehen, ich beantworte dies nur von einem Maven Standpunkt.

Wenn Sie ein JAR mit Abhängigkeiten erstellen wollen, müssen Sie Maven dazu auffordern, dies zu tun, das ist nicht der Standard. Möglichkeiten, Maven zu haben, sind (wahrscheinlich nicht erschöpfend):

Sander Verhagen 24.08.2013, 05:14
quelle
3

Auf diese Weise wird ein großes Einzelbild erstellt, und die Buildzeit wird bei jedem Build hoch sein.

Ich bevorzuge es stattdessen, alle jars einem lib-Ordner hinzuzufügen und in den classpath (jars manifest) aufzunehmen, wodurch wir, wenn wir etwas ändern oder auf dem Client oder einem anderen Ort implementieren müssen, einfach das kleine jar ( nicht alle Abhängigkeiten innerhalb von jar)

%Vor%     
coding_idiot 25.08.2013 07:06
quelle

Tags und Links