Frage

Ich habe die org.eclipse.equinox.p2.examples.rcp.prestartupdate -Projekt übernommen und es für die Verwendung in meiner RCP -Anwendung angepasst. Ich habe dann ein Update -Repository eingerichtet, das im Rahmen meines nächtlichen Builds aktualisiert wird.

Wenn ich meine Anwendung öffne, durchläuft sie die Bewegungen wie die Aktualisierung - sie findet die Update -Site, generiert eine Deinstallation und Installation von Operand für jedes Bundle und sagt, dass sie ohne Fehler fertiggestellt wurde. Das Problem ist, dass die Plugins nie tatsächlich in den Plugins -Ordner installiert werden, obwohl das Profil aktualisiert wird (nachfolgender Laufstaaten gibt es keine Aktualisierungen). Wenn mein Build das nächste Mal ausgeführt wird, wird es korrekt ausgeführt, dass es Updates gibt, aber dasselbe passiert wieder.

Ich habe Tage damit verbracht, Debugging zu debuggen, und das einzige, was aus dem Gewöhnlichen aussieht (nicht, dass ich vollständig verstehe, was los ist), ist, dass während der endgültigen Konfigurationsphase keine der TouchpointData -Objekte Anweisungen hat, sodass es nicht so aussieht, als ob Konfiguration ist, ist tun, was es sollte.

Ich habe wirklich keine Ahnung, wo ich als nächstes nachsehen soll, und möchte sehen, ob jemand anderes irgendwelche Ideen hat.

Aktualisieren:

Ich fand schließlich heraus, was los war.

Das Problem begann, als ich mein Produkt erstellte, ohne dass das Metadaten -Repository generiert wurde. Beim Bauen durch Eclipse habe ich das "Metadaten -Repository generieren" im Exportprodukt -Assistenten nicht überprüft, da ich kein P2 -Repository benötigte, nur das Produkt. Das Problem ist, dass das Produkt ohne Überprüfung dieser Taste nicht als P2 -ermöglicht wird, die Nebenwirkungen verursachen, wie z. B. nicht unter anderem ein Profil zu generieren.

Ich habe versucht, dies zu kompensieren, indem ich ein Profil in Code manuell erstellt habe, das ich seitdem herausgefunden habe, ist eine wirklich schlechte Idee. Meine ursprünglichen Probleme wurden erstellt, da mein Profil nicht richtig eingerichtet wurde.

Nachdem ich angefangen hatte, das Produkt mit "Metadata -Repository generieren" zu exportieren, wurde das Update korrekt installiert, um die neuen Plugins zu installieren.

Das Problem, das ich jetzt habe, ist, dass, obwohl die Plugins korrekt installiert werden, die ausführbare Datei, die ausführbare Datei, meine Anwendung nicht mehr starten kann. Ich erstelle meine Update -Site über Hudson und den Binärordner, der vorhanden ist, wenn ich den Eclipse Export -Produkt -Assistenten fehlt. Ich gehe davon aus, dass das jetzt schief geht.

Irgendwelche Ideen, warum die Binärdateien nicht in meinem kopflosen PDE -Build bauen würden?

Das auch herausgefunden. Ich hatte angenommen, dass alles, was ich brauchte, die einzelnen Launcher -Plugins für die Plattformen, auf denen ich aufbauen wollte,. Da ich versuchte, den Prozess zu verstehen, kopierte ich Plugins nacheinander auf den Build -Server. Es stellt sich heraus, dass es die plattformspezifischen Binärdateien in den Build enthält. Als ich das zum Build hinzufügte, tauchten die Binärdateien in der Ausgabe auf. Mit den Binärdateien funktioniert der Update -Mechanismus genau wie beabsichtigt.

War es hilfreich?

Lösung

Ich hatte angenommen, dass alles, was ich brauchte, die einzelnen Launcher -Plugins für die Plattformen, auf denen ich aufbauen wollte,. Da ich versuchte, den Prozess zu verstehen, kopierte ich Plugins nacheinander auf den Build -Server. Es stellt sich heraus, dass es die plattformspezifischen Binärdateien in den Build enthält. Als ich das zum Build hinzufügte, tauchten die Binärdateien in der Ausgabe auf. Mit den Binärdateien funktioniert der Update -Mechanismus genau wie beabsichtigt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top