Eclipse Update-Funktion erweitern/überarbeiten

G

Gonzo17

Gast
Heyho,

nach langer Zeit melde ich mich auch mal wieder mit einem kleinen Problem. Mal wieder hab ich es mit RCP zu tun und habe für mein Programm auch die Update-Funktion von Eclipse eingebaut. Wie ich das gemacht habe, kann man in etwa hier nachvollziehen, wobei ich schon ein paar Sachen angepasst habe: klick mich

Das funktioniert ja soweit auch wie es soll, aber was mich stört ist der Dialog, der mich auswählen lässt, welche Plugins/Features ich denn nun updaten will. Ich würde am liebsten (ähnlich wie bei Firefox) nur einen Dialog sehen, der erst nach Updates sucht, dann sagt ob er welche hat und mit einem Klick auf "installieren" die entsprechenden Updates herunterlädt und automatisch installiert. Da ich ja nur meine eigene Update Site kontaktiere, gehe ich ohnehin immer davon aus, dass ALLES, was dort angeboten wird, auch upgedatet werden muss.

Mein Problem ist jetzt gewissermaßen auf die Klasse UpdateManagerUI zu verzichten und trotzdem das Update zu verwirklichen. Wie ich einen Dialog gestalte ist kein Problem, es geht für mich nur um das, was im Hintergrund läuft. Wie kann man Updates suchen, dann auch finden und installieren? Geht das in Eclipse ohne diese Klasse UpdateManagerUI?

Ein kleines, nettes Feature, das ich noch gerne umsetzen würde (aber bisher keine Idee habe), wäre den User zu benachrichtigen, wenn ein Update zur Verfügung steht (beispielsweise bei Programmstart). Wie kann ich das im Hintergrund prüfen, sprich, wie kann ich mich mit dem Server verbinden und nach Updates suchen und dann eben sagen, ob Updates vorhanden sind? Wobei sich diese Frage ja schon fast von allein beantwortet, wenn sich das Problem oben löst. :)
 

Wildcard

Top Contributor
Das gibt es doch alles schon :autsch:
Das funktioniert ja soweit auch wie es soll, aber was mich stört ist der Dialog, der mich auswählen lässt, welche Plugins/Features ich denn nun updaten will. Ich würde am liebsten (ähnlich wie bei Firefox) nur einen Dialog sehen, der erst nach Updates sucht, dann sagt ob er welche hat und mit einem Klick auf "installieren" die entsprechenden Updates herunterlädt und automatisch installiert. Da ich ja nur meine eigene Update Site kontaktiere, gehe ich ohnehin immer davon aus, dass ALLES, was dort angeboten wird, auch upgedatet werden muss.
Help -> Check for updates

Ein kleines, nettes Feature, das ich noch gerne umsetzen würde (aber bisher keine Idee habe), wäre den User zu benachrichtigen, wenn ein Update zur Verfügung steht (beispielsweise bei Programmstart). Wie kann ich das im Hintergrund prüfen, sprich, wie kann ich mich mit dem Server verbinden und nach Updates suchen und dann eben sagen, ob Updates vorhanden sind? Wobei sich diese Frage ja schon fast von allein beantwortet, wenn sich das Problem oben löst.
In den Preferences Automatic Update inklusive konfigurierbarem Scheduler und alles was dazugehört
 
G

Gonzo17

Gast
Dass es das schon gibt denke ich mir, aber wenn man es nicht findet, nützt es einem ja nichts. Deswegen frage ich nach. :)

Ich hätte vielleicht noch dazu sagen sollen, dass ich noch Eclipse 3.4 verwende und da "Check for Updates" meines Wissens erst seit Eclipse 3.5 existiert, kenne ich das noch nicht, oder irre ich mich? Außerdem wird doch seit Eclipse 3.5 eine andere Technologie bzw andere Klassen zum updaten verwendet. Gibt es denn zu denen ein kleines Tutorial (wie gesagt, hab 3.5 noch nicht benutzt und würde auch ungern umsteigen)?
 

Wildcard

Top Contributor
Kann sein das es das erst seit 3.5 gibt, aber 3.4 ist auch ein ziemlich alter Hut mit 3.6 in den Startlöchern...
3.4 war die Übergangsphase zwischen altem UpdateManager und der Provisioning Platform p2.
Ich denke der Umstieg ist für dich fast Pflicht, denn erstens ist p2 in 3.4 noch nicht sehr zuverlässig und wenn du jetzt Code schreibst um in 3.4 3.5 Features nachzurüsten, dann ist der mit Sicherheit für die Tonne weil er in späteren Versionen, mit aktualisiertem p2 nicht mehr funktioniert.
 
G

Gonzo17

Gast
Gut, also ich hab mal Eclipse 3.5.2 geladen und mein Programm soweit angepasst und zum Laufen gebracht. Ich habe ein bisschen gesucht und folgenden Artikel zum Updaten eines RCPs gefunden: Equinox/p2/Adding Self Update to an RCP Application-3.5 - Eclipsepedia

Soweit so gut, das generell einzubauen ist auch kein Problem, aber da ich ja einen eigenen Dialog dazu machen will, wäre wahrscheinlich der Abschnitt "Configuring the p2 UI" bzw "Modifying the UI contributions" für mich interessant, richtig? Ich hab da aber ein bisschen Probleme, das so umzusetzen wie es da steht. Kennt jemand ein explizites Beispiel, das diese Erklärung umsetzt und an dem man sich orientieren kann?

Edit: Das größte Problem hab ich momentan mit dem berühmten Schlauch, auf dem man so gerne steht. Wenn ich die Codebeispiele von der oben genannten Seite umsetzen will, dann hab ich das Problem, dass er zB die Klasse Policy in org.eclipse.equinox.p2.ui nicht findet (und sonst auch keine Klasse daraus), obwohl ich dieses Plugin in den Dependencies aufgelistet habe. Ich denke da ich das aktuellste Eclipse habe (3.5.2) sollte das zumindest nicht das Problem sein. Irgendwie hab ich das Gefühl, dass dieses Package (und die Klassen darin) einfach nicht sichtbar sind, was aber komisch wäre, wenn die Beispiele auf der Seite funktionieren sollen. ???:L
 
Zuletzt bearbeitet von einem Moderator:

Wildcard

Top Contributor
Füg das Package mal im Manifest als imported package hinzu.
Es gibt nicht sehr viel Doku zu p2, besonders zu advanced features. Am besten du wendest dich bei konkreteren Fragen an die Newsgroup des equinox Projekts
 
G

Gonzo17

Gast
Habs versucht, aber die einzigen Packages, die ich hinzufügen kann, sind folgende:

org.eclipse.equinox.p2.internal.repository.tools
org.eclipse.equinox.p2.internal.repository.tools.tasks
org.eclipse.equinox.p2.publisher
org.eclipse.equinox.p2.publisher.actions
org.eclipse.equinox.p2.publisher.eclipse

???:L
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Eclipse zeigt Fehler nach Java-Update auf 1.8.0_40 Plattformprogrammierung 3
E OSGi Eclipse Plug-in programmierung: java.lang.NullPointerException: Cannot enter synchronized block because "profile" is null Plattformprogrammierung 4
R Eclipse Bundles Plattformprogrammierung 2
Robertop RCP Command in bereits bestehendes Eclipse-Menü einbauen Plattformprogrammierung 4
T Java Projekt läuft nur in Eclipse Plattformprogrammierung 6
M Eclipse Plugin PreferencePage BooleanFieldEditor Plattformprogrammierung 1
F OSGi Plugin unter Eclipse arbeitet anders als wenn veröffentlicht Plattformprogrammierung 2
D RCP P2-Repository für Eclipse-Plugins Plattformprogrammierung 0
M Debuging in Eclipse Annotations Processor Plattformprogrammierung 0
D Nach Sprachpaket Installation kann eclipse nicht mehr gestartet werden Plattformprogrammierung 4
L0MiN Wie kann ich ein Klassendiagramm aus Eclipse heraus erstellen? Plattformprogrammierung 5
M Eclipse Probleme beim Ausführen eines Programms Plattformprogrammierung 3
feinperligekohlensaeure Eclipse Workspace gemeinsam Nutzen -> keine .project Datei Plattformprogrammierung 1
F Eclipse Build Path auf benötigte Projekte Plattformprogrammierung 4
B Daten von Eclipse extern sichern Plattformprogrammierung 2
VfL_Freak [Eclipse] Fehleranzeige im Reiter "Problems" Plattformprogrammierung 1
S Errors in workspace bei eclipse Plattformprogrammierung 3
T eclipse bietet keine META-INF an Plattformprogrammierung 1
N Eclipse wo starten Plattformprogrammierung 6
A Eclipse schließt einfach ohne Fehlermeldung Plattformprogrammierung 4
W Eclipse vergißt beim Exportieren Resources-Ordner Plattformprogrammierung 11
A RCP Eclipse e4 und Injection-Contexts Plattformprogrammierung 0
K Eclipse fährt nicht mehr hoch. Metadatendatei schuld? Plattformprogrammierung 7
C [Eclipse RCP E4]InjectionException: no actual value was found for the argument "MDirtyable" Plattformprogrammierung 8
T Eclipse Eigenschaften hinzufügen Plattformprogrammierung 2
M RCP [Eclipse RCP 3.4] ViewTab Kontextmenu "Alle schließen" Plattformprogrammierung 0
D Problem mit eclipse Plattformprogrammierung 2
S Verschieben des Verzeichnis .eclipse aus Userprofile Plattformprogrammierung 3
A RCP Kann kein Eclipse 4 Projekt anlegen Plattformprogrammierung 0
S RCP Exportiertes RCP Produkt lädt Datei nicht, bei Start aus Eclipse wird Datei jedoch gefunden Plattformprogrammierung 6
G Eine Library in Eclipse zur Verfügung stellen Plattformprogrammierung 14
Gregorrr Eclipse RCP Product Build-Nummer + Jenkins Plattformprogrammierung 6
R Einfaches Eclipse-Plugin-Beispiel funktioniert nicht Plattformprogrammierung 5
H OSGi OSGi + Logback + slf4j - Eclipse Run Configuration Plattformprogrammierung 7
C plugin development environment eclipse Plattformprogrammierung 4
R RCP Commands nutzen / org.eclipse.ui.file.save Plattformprogrammierung 7
O Installiere externe Methode "containsNone" in Eclipse Plattformprogrammierung 2
M Keybinding in Eclipse Plugin Plattformprogrammierung 3
TheWhiteShadow RCP Konstrukt für Editor in Eclipse gesucht. Plattformprogrammierung 3
B Eclipse Probleme mit build Plattformprogrammierung 8
H Keine Hilfe/API mehr in Eclipse Juno? Plattformprogrammierung 4
B Neue SuppressWarning in Eclipse Juno Plattformprogrammierung 6
B Eclipse Property Page Plattformprogrammierung 6
B Eclipse PreferencePage Plattformprogrammierung 3
B Eclipse Plugin Einstellungsleiste Plattformprogrammierung 2
B Birt-Previewer über Eclipse Plattformprogrammierung 14
J Eclipse Plug-In für UML-Diagramme Problem Plattformprogrammierung 4
O Eclipse Plugin - Einfachstes Problem, das es gibt. Plattformprogrammierung 2
R Eclipse RCP Tabellen-View (Anfängerfrage) Plattformprogrammierung 3
C Eclipse: Notification beim umbennen von Methoden? Plattformprogrammierung 4
schalentier Eclipse Sourcecode Plattformprogrammierung 4
A Eclipse undo/redo button reagiert nicht auf Änderungen in der OperationHistory Plattformprogrammierung 5
P Eclipse M2_REPO (NON MODIFIABLE) Plattformprogrammierung 8
B Eclipse: Contextmenu id erhalten? Plattformprogrammierung 9
H Datei in eclipse wird nicht erkannt Plattformprogrammierung 3
O Neues Tastenkürzel für Eclipse Editorfenster registrieren Plattformprogrammierung 2
3 Eclipse Editor Plugin selektiert Projekt nicht Plattformprogrammierung 10
Madlip RCP eclipse.ui.bindings (Key-Problematik) Plattformprogrammierung 2
S Eclipse vs. JavaMail vs. Ubuntu vs. Windows Plattformprogrammierung 3
M eclipse führt applikationen nicht mehr aus Plattformprogrammierung 6
S Eclipse: Auf CTRL-C/CTRL-V im Package Explorer? Plattformprogrammierung 4
M Eclipse und Hilfen Plattformprogrammierung 5
G Eclipse buggt rum!!! Plattformprogrammierung 4
B Eclipse RCP und Java 7 Plattformprogrammierung 7
G RCP Eclipse Editor + Guice Plattformprogrammierung 8
T RCP Eclipse RCP: Wo/wann im Plugin ist workbench initialisiert? Plattformprogrammierung 14
G Eclipse Plug-in: wie refreshe ich eine combobox? Plattformprogrammierung 4
M Eclipse Plug-in: Wie eine Grafik einfügen? Plattformprogrammierung 20
M RCP [Eclipse RCP] Feature Export und "Fehler"... Plattformprogrammierung 3
P Eclipse speichert keine Änderungen Plattformprogrammierung 5
M Eclipse - Dokumentation nicht über das Internet benutzen Plattformprogrammierung 3
C Eclipse Plugin NoClassDefFoundError Plattformprogrammierung 4
E org.eclipse.ui.dialogs.ListSelectionDialog erzeugt ClassNotFoundException zur Laufzeit Plattformprogrammierung 4
M Eclipse Plugin Entwicklung - NoClassDefFoundError Plattformprogrammierung 10
C RCP Verständnisfrage Eclipse/Equinox Plattformprogrammierung 4
D eclipse-RCP von der Konsole baut nicht Plattformprogrammierung 3
L RCP Eclipse Popupmenu im PackageExplorer erweitern? Plattformprogrammierung 7
C Eclipse Plugin Entwicklung: Editor für Flussdiagramme Plattformprogrammierung 6
S (OSGI - EQUINOX) Welche Eclipse IDE? Plattformprogrammierung 3
C Pdf in jar datei einbinden mit eclipse Plattformprogrammierung 23
G neuer branch in SVN mit Eclipse Plattformprogrammierung 6
F RCP eclipse rcp ohne eclipse? Plattformprogrammierung 15
dzim RCP Eclipse Provisioning Plattformprogrammierung 3
G RCP Abhängigkeiten von Eclipse Plugins Plattformprogrammierung 9
K Eclipse RCP, EMF, Hibernate Problem Plattformprogrammierung 7
B RCP eigenes Eclipse Plugin wird nicht aufgelöst Plattformprogrammierung 7
T Eclipse Helios XMLUnit importieren Plattformprogrammierung 6
R Verwendung pdfbox in Maven-Projekt in Eclipse Plattformprogrammierung 3
lumo RCP wechseln der Font von Eclipse per code Plattformprogrammierung 10
lumo RCP Eclipse internationalisierung Plattformprogrammierung 5
jemandzehage Kurze Fehlernachricht beim starten in Eclipse Plattformprogrammierung 5
A RCP java.lang.ClassNotFoundException: org.eclipse.core.runtime.adaptor.EclipseStarter Plattformprogrammierung 7
P Wie bekomme ich ICompilationUnit aus dem event? bei Eclipse-Plugin Plattformprogrammierung 3
Rudolf External Libs dauerhaft in Eclipse einbinden Plattformprogrammierung 3
G RCP Eclipse UI Forms Plattformprogrammierung 10
musiKk RCP Eclipse: Speichern von Spaltenbreiten Plattformprogrammierung 9
X Datei in einem Eclipse Projekt über Plugin zugreifen Plattformprogrammierung 2
P Eclipse Help: Wie Links zu anderer Hilfeseite setzen ? Plattformprogrammierung 5
F Eclipse EMF Modelltransformation Plattformprogrammierung 3
tfa RCP Compilereinstellungen festlegen bei Eclipse-Batch-Build Plattformprogrammierung 9

Ähnliche Java Themen


Oben