Met de bijwerkfunctie van Eclipse kunnen gebruikers zoeken naar de updates voor de huidige geïnstalleerde functies. Voor elke geïnstalleerde functie wordt gebruikgemaakt van de ingebedde URL om een verbinding te maken met de server op afstand en naar nieuwe versies te zoeken. Als er updates aanwezig zijn, stelt Eclipse de gebruiker in staat om de installatieprocedure te starten. Na het downloaden, installeren en opnieuw starten van het platform, is de nieuwe versie van de functie klaar voor gebruik.
In bedrijven met veel gebruikers van hetzelfde op Eclipse gebaseerde product (doorgaans een commercieel product) kan deze bijwerkmethode tot verschillende problemen leiden:
De eerste stap die een productbeheerder uitvoert, is het instellen van een lokale updatesite voor Eclipse op een server die is verbonden met het LAN van het bedrijf (achter de firewall). De updatesite is een subset van de updatesite op het internet omdat deze alleen de functies en plugins bevat die het bedrijf op dat moment wil toepassen. In technisch opzicht is deze site een gewone updatesite met site.xml, functie- en pluginarchieven.
Beheerders kunnen deze site op twee manieren opzetten:
Aangezien voor functies de URL van de updatesite in de lijst is ingebed, zijn ze niet op de hoogte van de lokale updatesites die door de beheerders zijn ingesteld. Het is dan ook van belang om een omleidingsvoorziening in te stellen. U kunt deze en andere beleidsinstellingen voor een Eclipse-product opgeven door een bestand met updatebeleid te maken en de bijwerkfunctie zo in te stellen dat van dit bestand gebruik wordt gemaakt.
Het bestand in kwestie heeft een XML-indeling en kan elke willekeurige naam hebben. U kunt het bestand instellen in
Voorkeuren > Installeren/bijwerken
in het veld Updatebeleid. Standaard is het tekstveld leeg: gebruikers kunnen de URL van het bestand met het bijwerkbeleid opgeven. Het bestand wordt beheerd door de lokale beheerder en wordt door alle productinstallaties gedeeld. Er zijn twee manieren om het bestand te delen:
org.eclipse.update.core/updatePolicyURL = <URL value>
Het beleidsbestand moet moet aan de volgende DTD voldoen:
<?xml encoding="ISO-8859-1"?>
<!ELEMENT update-policy (url-map)*>
<!ATTLIST update-policy
><!ELEMENT url-map EMPTY>
<!ATTLIST url-map
pattern CDATA #REQUIRED
url CDATA #REQUIRED
>
Dit element wordt gebruikt voor het overschrijven van bijwerk-URL's die in functielijsten zijn ingebed. Bij het zoeken naar nieuwe updates zoekt Eclipse naar het updatebeleid (indien aanwezig) en controleert of url-map voor de bijbehorende functieprefix is opgegeven. Wanneer er een overeenkomst wordt gevonden, wordt de toegewezen URL gebruikt in plaats van de ingebedde URL. Op deze manier kunnen beheerders Eclipse-producten laten zoeken naar updates op de lokale server achter de firewall. Functies van derden worden nog steeds volgens de standaardmethode geïnstalleerd, omdat deze functies geen overeenkomsten in het bestand met updatebeleid vinden.
Er kunnen diverse url-map-elementen in het bestand bestaan. Functieprefixes kunnen meer of minder specifiek zijn. Om bijvoorbeeld alle Eclipse-updates om te leiden, kan het patroonkenmerk "org.eclipse"
zijn. Ook is het mogelijk om een volledig functie-ID als een patroon te gebruiken als omleiding per functie is vereist.
Patronen in het bestand kunnen worden gekozen om de mogelijke overeenkomsten steeds meer te beperken. Dit kan in meerdere overeenkomsten voor een bepaalde functie resulteren. In dit geval wordt de overeenkomst met het langste patroon gebruikt. Voorbeeld:
<?xml version="1.0" encoding="UTF-8"?> <update-policy> <url-map pattern="org.eclipse" url="URL1"/> <url-map pattern="org.eclipse.jdt" url="URL2"/> </update-policy>
In het bovenstaande geval worden alle Eclipse-functies bijgewerkt vanaf URL1, met uitzondering van org.eclipse.jdt
dat wordt bijgewerkt vanaf URL2.
Bestanden met updatebeleid bevatten geen te vertalen tekenreeksen en vereisen dus ook geen speciale NL-bewerking. Over het algemeen moeten de bestanden UTF-8-codering gebruiken.
Het derde onderdeel van de totale oplossing wordt in een ander onderwerp behandeld maar wordt hier toch genoemd omdat het een onlosmakelijk onderdeel van de oplossing vormt. Automatische updates stellen Eclipse in staat om volgens een bepaalde schema naar updates te zoeken (bij opstarten, een keer per dag, een keer per week, enzovoort).
Hier volgt een overzicht van de stappen van deze oplossing: