Was ist die beste Vorgehensweise zum Erstellen einer .jar-Datei aus einem Java-Projekt?Was ist die beste Vorgehensweise zum Erstellen einer JAR-Datei aus einem Java-Projekt?
Antwort
Eclipse IDE ist der beste Weg für Neulinge. Wählen Sie einfach das Projekt, klicken Sie mit der rechten Maustaste auf Datei exportieren, wählen Sie jar anf dateiname.
Wenn Sie mit Eclipse noch nicht vertraut genug sind, um ein Glas zu erstellen, ist es eine ziemlich schwierige Oberfläche, wie im Thread "Worst UI" erwähnt: http://stackoverflow.com/questions/238177/worst-ui-youve-ever -used/568142 # 568142 – Chadwick
Die Verwendung der GUI ist die schlechteste Vorgehensweise beim Erstellen einer .jar-Datei. Es ist nicht festgelegt, um von anderen wiederholbar zu sein UND Sie haben wenig Kontrolle über den Inhalt. –
einige Punkte zu beachten:
- richtige MANIFEST.MF erstellen, die enthalten:
- Herstellungsdatum;
- Autor;
- Implementierungsversion;
- Verwenden Sie ein Skript/Programm - wie ein Ant task - das kümmert sich um das korrekte Erstellen einer Manifest-Datei.
Hier ist eine einfache ant-Datei, die ein Java-Projekt erstellt, aus den Ant tutorial angepasst:
<project>
<target name="clean">
<delete dir="build"/>
</target>
<target name="compile">
<mkdir dir="build/classes"/>
<javac srcdir="src" destdir="build/classes"/>
</target>
<target name="jar">
<mkdir dir="build/jar"/>
<jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">
<manifest>
<attribute name="Implementation-Version" value="1.0"/>
</manifest>
</jar>
</target>
<target name="run">
<java jar="build/jar/HelloWorld.jar" fork="true"/>
</target>
</project>
Ich denke Neulinge sollten lernen, die echten Werkzeuge zu benutzen - nämlich die, die vom JDK zur Verfügung gestellt werden - bevor sie Software von Drittanbietern wie Ant benutzen. Es ist, als ob man eine IDE benutzt, wenn man eine neue Sprache lernt. –
Vielleicht. Aber ich sehe keine Erwähnung von "Newcomern", nur "Best Practices". –
Es ist ziemlich offensichtlich, dass die Person, die die Frage stellt, wahrscheinlich kein Experte ist. –
bei this tutorial auf den Grundlagen von Sun JAR-Format Lesen auf. Meiner Meinung nach sollten Sie die Grundlagen - nämlich MANIFESTs, die SDK-Tools - lernen, bevor Sie auf Drittanbieter-Tools wie die folgenden einsteigen.
The Jar Kommandozeilen-Tool mit dem Sun JDK verteilt:
jar -cf myjar.jar base_src_folder
Wo base_src_folder
das Verzeichnis des Quellcodes halten Eltern ist.
Alternativ können Sie auch ein Build-Tool wie Apache Ant verwenden. Es hat Funktionen wie die JAR task, um dies für Sie zu tun.
Apache Ant
Ameise ist nicht ganz einfach zu beginnen. Stattdessen würde ich vorschlagen, eine IDE zu verwenden, zum Beispiel NetBeans, die ein Ant-Skript unter der Haube erstellt. Alles, was Sie tun müssen, ist "Build" zu drücken, und Sie erhalten eine .jar-Datei als Ergebnis.
Ich stimme nicht zu, dass es nicht einfach ist, Ant zu verwenden, aber es kommt wirklich praktisch mit Netbeans. +1 –
Ant ist verdammt leicht zu holen ... –
+1 auf atc's Kommentar. es hat mir nicht schwer gemacht Ant zu lernen. Ich fühlte mich ziemlich leicht. – Veera
Apache Maven, für Projekte, die von anderen Projekten abhängig sind.
Zugegeben, Maven ist vielleicht zu viel für Lernprojekte, aber es ist von unschätzbarem Wert für größere, verteilte.
Wenn Maven ordnungsgemäß in Eclipse integriert wurde (wie Ameisen ist), dann wäre es nicht nur die beste Praxis, es wäre auch die einfachste. Maven baut sich wie eine Ameise auf, wenn die Skripte für dich geschrieben wurden. – Ring
- 1. Xcode Dateiverwaltung. Was ist die beste Vorgehensweise?
- 2. register_shutdown_function() - Was ist die beste Vorgehensweise?
- 3. Was ist die beste Vorgehensweise zum Erstellen einer AngularJS 1.5-Komponente in Typescript?
- 4. Was ist die beste Vorgehensweise zum Erstellen eines Unix/Linux-Befehlszeilentools in C/C++?
- 5. Fadensicherheit ... Was ist meine "beste" Vorgehensweise?
- 6. Was ist die beste Vorgehensweise zum Erstellen eines ASP.NET MVC-Steuerelements oder -Helfers?
- 7. Was ist die beste Vorgehensweise für die Rückgabe von Ergebnissen aus Observablen in einem Observable?
- 8. Was ist die beste Vorgehensweise beim Einsatz von MODX?
- 9. ADFS - Was ist die beste Vorgehensweise zum Einschränken des Benutzerzugriffs und zum Bereitstellen von Benutzerattributen?
- 10. Was ist die beste Vorgehensweise für die Zeitzonenbehandlung in MySQL?
- 11. Was ist die beste Vorgehensweise für die Durchführung eines Passwortvergleichs?
- 12. Was ist die beste Vorgehensweise für Wakanda 4D Fehlerbehandlung?
- 13. Was ist die beste Vorgehensweise für "private" öffentliche URLs?
- 14. Was ist die beste Vorgehensweise für die Verarbeitung von Tupel mit einem Wert in Python?
- 15. Was ist das beste Werkzeug zum Erstellen einer Java-Erweiterung?
- 16. Leerzeichen in Xcode-Projektnamen, was ist die beste Vorgehensweise?
- 17. Was ist die beste Vorgehensweise für eine Such-SQL-Abfrage?
- 18. Was ist die beste Vorgehensweise bei Medienabfragen in CSS3?
- 19. getClass() und statische Methoden: Was ist die beste Vorgehensweise?
- 20. Was ist die beste Vorgehensweise für schreibgeschützte Listen in NHibernate?
- 21. Was ist die beste Vorgehensweise zum Speichern von mehrschichtigen Daten in mySQL?
- 22. Was ist die beste Vorgehensweise zum Speichern von UI-Messaging-Zeichenfolgen in Python/Django?
- 23. Was ist die beste Vorgehensweise zum Serialisieren von Java-Enums in XML?
- 24. Was ist die beste Vorgehensweise zum Einrichten von Assoziationen mit factory_girl in Gurken?
- 25. Was ist die beste Vorgehensweise für die Rückgabe von Dateien aus WCF?
- 26. Was ist die beste Bibliothek zum Erstellen einer AJAX-Auto-Suggest-Textbox in einem Webformular?
- 27. Was ist die beste Vorgehensweise für die Implementierung einer 'semi-virtuellen' Methode?
- 28. Was ist die beste Methode zum Erstellen von ClickOnce-Bereitstellungen?
- 29. TDD: Was ist die beste Vorgehensweise zum Testen von DataAnnotations in ASP.NET MVC 3?
- 30. Was ist die beste Vorgehensweise zum Anzeigen mehrerer Ansichten in Codeigniter?
Meinst du den besten Weg, um ein Glas zu erstellen, oder wann/warum sollten Sie ein Glas erstellen? –
Beim Erstellen einer .jar-Datei werden nur Ihre Klassen und alle erforderlichen Ressourcendateien in ein einziges Archiv gepackt. was genau suchst du? – aberrant80