2016-05-04 2 views
0

Ich habe mich schon seit einiger Zeit umgeschaut, fand aber keine Möglichkeit, ein JAR (nicht runnable jar) zu exportieren, das in seinem Buildpfad die referenzierten Bibliotheken enthält.Java-Export-JAR einschließlich Bibliotheken

Mit Eclipse habe ich den Ordner lib enthalten, der die Gläser der referenzierten Bibliotheken im Exportprozess enthält.
Das Importieren dieser JAR in ein anderes Projekt und das Aufrufen einiger Methoden führt zu einer ClassNotFoundException.
Mit Blick auf das Manifest habe ich keinen Hinweis auf diese Gläser im Klassenpfad gefunden, obwohl die Gläser tatsächlich in das Glas enthalten sind.

Also meine Fragen sind:
1. Gibt es eine Möglichkeit, die Verpackung der nicht ausführbaren JAR zu erreichen, so dass es Bibliotheken enthalten wird?
2. Gibt es Best Practices für die Erstellung und Bereitstellung eines Jars, das andere JAR-Bibliotheken enthält?

+1

Eine weitere Best-Practice 'verwendet maven' – Patrick

+1

die Option ankreuzen' Export Java-Quelldateien und resources' und 'hinzufügen Verzeichnis entries' – piyushj

+0

Jawohl Maven die beste Option ist, aber es ist in unserer Organisation ATM nicht zur Verfügung. – itaied

Antwort

0

Ich habe es auch versucht, aber es funktioniert nicht für mich. Ich habe die letzte .jar Datei hinzugefügt, aber es funktioniert nicht.

Also habe ich einen Workaround.

  1. Extrahieren Sie die .jar Datei, die Sie als Abhängigkeit wünschen.
  2. Kopieren Sie diesen Inhalt und legen Sie alles in Ihre .jar Datei.
  3. Fügen Sie Ihre .jar Datei als Abhängigkeit innerhalb eines Eclipse-Projekts hinzu.
  4. Führen Sie es und sehen Sie, ob alles in Ordnung ist.