In Eclipse (Neon) kann eine runnable .jar
erstellt werden über File > Export > Runnable jar > Next
und Interaktion mit dem Dialogfeld, das angezeigt wird. Ich wollte diese Schritte eliminieren. Ich habe den Export meiner .jar
Datei durch Erstellen der folgenden ant
Datei, die makeJar.xml
heißt, automatisiert und befindet sich im Projektverzeichnis.Eclipse-Automatisierung mit ant
<project name="makeJar" default="makeJarTarget" basedir=".">
<property name="jar" value="../export/ohana1/ohana1.jar"/>
<target name="makeJarTarget">
<jar destfile="${jar}" basedir="bin"/>
</target>
<target name="cleanTarget">
<delete file="${jar}"/>
</target>
</project>
Diese ant
Datei ist sichtbar im Project > Properties > Builders
Dialog. Ganz oben in der Builder-Liste befindet sich der Standard-Builder mit der Bezeichnung Java Builder
. Der nächste Builder in der Liste ist die zuvor genannte ant
-Datei, die als makeJar
angezeigt wird.
an dieser Stelle angenommen, daß eine Bearbeitung auf den Java-Quellcode geschieht. Der erste Schritt des Speicherns von Codeänderungen bewirkt, dass .class
Dateien aktualisiert werden. Der nächste Schritt beim Klicken auf Build All
aktualisiert die Datei .jar
.
Es wäre ideal, wenn das Speichern von Codeänderungen (ohne Build All
klicken zu müssen) denselben Effekt hatte. Leider nicht. Das Speichern von Codeänderungen führt dazu, dass nur .class
Dateien aktualisiert werden; Die .jar
bleibt unverändert (veraltet).
Es ist möglich zu begründen, warum dies der Fall ist. Im Menü Eclipse Project
ist Build All
eine Auswahl, die sich von Build Automatically
unterscheidet. Wenn Codeänderungen gespeichert werden und Build Automatically
zuvor festgelegt wurde (dieser Menüeintrag kann sich eine Häkcheneinstellung merken), werden die .class
Dateien aktualisiert, aber nichts mehr als das. Es gibt keinen Menüeintrag, um etwas wie Build All Automatically
auszuführen. Gibt es eine Möglichkeit, weiter zu automatisieren, so dass das Speichern von Codeänderungen ausreicht, um nicht nur .class
Dateien, sondern auch die .jar
zu generieren?
EDIT: Achtung: "Build All" hat den Effekt, alle Projekte an, die geöffnet sind. Bevor Sie auf "Alles erstellen" klicken, möchten Sie vielleicht alle Projekte schließen, die Sie nur durchsuchen.
Es tut uns leid zu berichten, dass das nicht funktioniert hat. BTW in meiner .Project-Datei war es sauber, voll, inkrementell, –
H2ONaCl
Und haben Sie diese Zeile auskommentieren oder entfernen? Ich habe es mit Eclipse Oxygen.1a verifiziert. – howlger
Ich habe es entfernt. Ich bin auf Neon. Jedenfalls hat diese Frage für mich keine Priorität mehr. Ich habe mich entschieden, manuell zu exportieren. – H2ONaCl