Update des JAR-Archivs

Status
Nicht offen für weitere Antworten.

vladoo

Aktives Mitglied
Hi, ich habe ein JAR-Archiv, in dem ca. 20 Klassen sind. Ich möchte in mein Programm eine Updatefunktion einbauen.
Ich möchte kein WebStart verwenden.

Ich will in der Menüleiste ein "Update" einbinden. Der Benutzer klickt drauf und das Programm schaut in einem Netzlaufwerk, welches immer fest ist, ob eine neue Version des Programms zur verfügung steht.

Wenn ja, soll das JAR-Archiv nur die Klassen, die auf dem Netzlaufwerk liegen (das sind die neuen Klassen) in das bestehende, auf der lokalen Platte installierte JAR-Archiv aufnehmen und die alten Klassen überschreiben.

Es wäre mir auch recht, wenn das Programm das komplette JAR-Archiv runterlädt und das alte überschreibt und danach sich selbst neustartet.

Kann mir jemand einen Tip geben? Wie kann man das machen?
 

Murray

Top Contributor
Ganz so einfach geht das nicht, weil die Jar-Datei von dem Moment an, wo der ClassLoader sie zum Laden der ersten Klasse geöffnet hat, nicht mehr zum Schreiben geöffnet werden kann. Du musst den Update-und-Start-Mechanismus von der eigentlichen Anwendung trennen und in ein eigenes Jar-File packen. Dann könnte eine Art "Bootstrap-Loader" nach einer neuen Version des Anwendungs-Jars suchen, es ggfs. herunterladen und dann erst die eigentliche Anwendung starten. Damit wäre natürlich nur das Jar mit den Anwendungsklassen austauschbar, nicht aber die Bootstrap-Klassen.
 

vladoo

Aktives Mitglied
Was sind die Bootstrap-Klassen? Wird es deshalb probleme geben?

Es ist so: Die anwender bekommen ne msi Datei die von selbst installiert wird.
Ich möchte, die Klassen die zum Update zur verfügung stehen. Auf nen Server schmeißen. Die Anwender sollen dann auf nen Button oder wie du vorgeschlagen hast über ein extra Update-Programm die Klassen ziehen und die Anwendung einfach wie gewohnt über die Desktopverknüpfung starten können.
 

NTB

Bekanntes Mitglied
Dann bau Dir eine extra Jar, die nichts anderes macht, als die zweite Jar zu starten - ein Loader. Und bei einem Update wird die Programmjar ausgetauscht und vom Loader neu gestartet.
 

Murray

Top Contributor
NTB hat gesagt.:
Dann bau Dir eine extra Jar, die nichts anderes macht, als die zweite Jar zu starten - ein Loader. Und bei einem Update wird die Programmjar ausgetauscht und vom Loader neu gestartet.
So meinte ich das.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Java 8 Security Update Allgemeine Java-Themen 3
krgewb Darstellung bei Java-Update Allgemeine Java-Themen 8
VfL_Freak Große und seltsame Probleme nach Java-Update auf V1.8.0_91 Allgemeine Java-Themen 3
B Umgebungsvariable Anpassen der Umgebungsvariablen nach Java-Update ? Allgemeine Java-Themen 14
S Java-Webstart und Update-Checks Allgemeine Java-Themen 0
A Update Software programmieren Allgemeine Java-Themen 1
T Nach Java Update: Jar Datein öffnen sich nicht mehr mit doppelklick Allgemeine Java-Themen 3
G JavaFX Problem nach Update auf Java 8 Allgemeine Java-Themen 0
E Java 7 update 51 Allgemeine Java-Themen 9
H SHA256 update-Funktion Allgemeine Java-Themen 3
F.S.WhiTeY JDK installieren Linux: Nach Update link auf Java zerschossen Allgemeine Java-Themen 4
eskimo328 Swing Client Anwendung für MAC OS (Update Routine) Allgemeine Java-Themen 6
L Launche update Allgemeine Java-Themen 19
D Update von TimerTask Allgemeine Java-Themen 13
X Update einer Jar während der Laufzeit Allgemeine Java-Themen 8
J Eigenes Produkt Upgrade / Update-fähig halten? Allgemeine Java-Themen 16
S iText PDF - Verständnisproblem beim Update von TableCells (Seitenzahlen) Allgemeine Java-Themen 2
D Updaten von Klassen durch jar.exe zerstört diese. Update durch WinRAR gelingt! Allgemeine Java-Themen 2
T Update eines Programms - Beenden eines anderen Prozesses überwachen Allgemeine Java-Themen 8
D Java Update automatisieren Allgemeine Java-Themen 4
H SQL Update "Rückgabe der DB als String?" Allgemeine Java-Themen 7
X HTTP Problem mit static/non static JTextArea Update Allgemeine Java-Themen 17
S eigene Update Funktion Allgemeine Java-Themen 5
martin82 Java Runtime Update >17 - SwingWorker Änderungen? Allgemeine Java-Themen 7
M jdesktop binding: jTable update nach Änderung... Allgemeine Java-Themen 3
B Regex-Fehler nach lib-Update Allgemeine Java-Themen 2
H Probleme! Mac Os und Java Update Allgemeine Java-Themen 3
R JAR-Update in laufender Applikation Allgemeine Java-Themen 9
A Hilfe mit 2-dimensionalem array ***UPDATE*** Allgemeine Java-Themen 27
Kr0e JCE doFinal/update Allgemeine Java-Themen 2
MQue update/paint Allgemeine Java-Themen 7
L Java6 update N bekommt neues Browser-Plugin, bitte testen. Allgemeine Java-Themen 7
O App Update Allgemeine Java-Themen 3
T NullPointerException nach Java Update Allgemeine Java-Themen 4
M Update auf netbeans 6Beta 1 Allgemeine Java-Themen 2
U Programm soll sich nach update neustarten Allgemeine Java-Themen 30
M Tool zum autom. Client-Update Allgemeine Java-Themen 2
C Java SE Runtime 6 Update 1 - IE 7 und FF 2.0 - Allgemeine Java-Themen 6
M Frage zu update Methode von Observer! Allgemeine Java-Themen 40
K Regex Versucher 2 *Update - sinnvoll und schön* :) Allgemeine Java-Themen 6
T update() wird bei Programmstart und resize nicht gemacht Allgemeine Java-Themen 4
R Browser-Problem nach Java-Update Allgemeine Java-Themen 9
B statusbar update -> mit thread oder listener? Allgemeine Java-Themen 7
D wie update-erinnerung der jre deaktivieren? Allgemeine Java-Themen 6
D repaint oder update Methode? Allgemeine Java-Themen 6

Ähnliche Java Themen

Neue Themen


Oben