Funkcja Aktualizacje Eclipse umożliwia użytkownikom wyszukiwanie aktualizacji aktualnie zainstalowanych składników. Dla każdego zainstalowanego składnika funkcja aktualizacji używa wbudowanego adresu URL do nawiązania połączenia z serwerem zdalnym i wyszukania nowych wersji. Jeśli aktualizacje są dostępne, platforma Eclipse umożliwia użytkownikom rozpoczęcie procedury instalacji. Po pobraniu, zainstalowaniu i zrestartowaniu platformy nowa wersja składnika jest gotowa do użycia.
W firmach z wieloma użytkownikami tego samego produktu opartego na platformie Eclipse (najczęściej jest to produkt komercyjny) ten model aktualizacji może być przyczyną wielu problemów:
Pierwszym zadaniem dla administratora produktu jest skonfigurowanie lokalnego serwisu aktualizacji platformy Eclipse na serwerze znajdującym się w sieci LAN firmy (za zaporą firewall). Serwis aktualizacji jest podzbiorem serwisu aktualizacji produktu w Internecie, ponieważ zawiera tylko składniki i wtyczki związane z aktualizacjami, które firma chce zastosować w danym momencie. Od strony technicznej ten serwis jest zwykłym serwisem aktualizacji platformy Eclipse z plikiem site.xml oraz archiwami składników i wtyczek.
Administratorzy mogą utworzyć ten serwis na dwa sposoby:
Ponieważ w manifeście składników osadzony jest adres URL serwisu aktualizacji, składniki te nie łączą się z lokalnymi serwisami aktualizacji, które zostały skonfigurowane przez administratorów. Z tego powodu konieczne jest zapewnienie możliwości przekierowania. To i inne ustawienia strategii aktualizacji można skonfigurować dla produktu Eclipse, tworząc plik strategii aktualizacji i konfigurując funkcję aktualizacji tak, aby podczas wyszukiwania stosowany był ten plik.
Plik strategii aktualizacji musi być w formacie XML i może mieć dowolną nazwę. Plik można określić wybierając opcje
Preferencje > Instalowanie/aktualizowanie
i wprowadzając dane w polu Strategia aktualizacji. Domyślnie to pole tekstowe jest puste. Użytkownicy mogą wprowadzić w nim adres URL pliku strategii aktualizacji. Plik ten jest zarządzany przez administratora lokalnego i współużytkowany przez wszystkie instalacje produktu. Istnieją dwa sposoby zapewniające współużytkowanie tego pliku:
org.eclipse.update.core/updatePolicyURL = <adres URL>
Plik strategii musi być zgodny z następującą definicją DTD:
<?xml encoding="ISO-8859-2"?>
<!ELEMENT update-policy (url-map)*>
<!ATTLIST update-policy
><!ELEMENT url-map EMPTY>
<!ATTLIST url-map
pattern CDATA #REQUIRED
url CDATA #REQUIRED
>
Ten element służy do przesłaniania adresów URL aktualizacji wbudowanych w manifest składnika. Podczas wyszukiwania aktualizacji platforma Eclipse będzie sprawdzać strategię aktualizacji (jeśli jest obecna), aby ustalić, czy określono element url-map dla zgodnego przedrostka składnika. Jeśli dopasowanie zostanie znalezione, zamiast osadzonego adresu URL zostanie użyty adres odwzorowany. W ten sposób administratorzy mogą skonfigurować produkty platformy Eclipse tak, aby wyszukiwały aktualizacje na serwerze lokalnym, za zaporą firewall. Składniki innych firm, które zostały zainstalowane przez funkcję aktualizacji platformy Eclipse, będą nadal aktualizowane przy użyciu mechanizmu domyślnego, ponieważ strategia nie będzie zawierała odpowiednich dopasowań.
W pliku strategii może istnieć kilka elementów url-map. Przedrostki składników mogą być bardziej lub mniej szczegółowe. Aby na przykład przekierować wszystkie aktualizacje platformy Eclipse, należy określić wzorzec "org.eclipse"
. Istnieje także możliwość użycia pełnego identyfikatora składnika, jeśli przekierowanie ma dotyczyć tylko konkretnego składnika.
Poprzez wybieranie wzorców w pliku można progresywnie zawężać zakres potencjalnych dopasowań. Wynikiem tego może być wiele dopasowań dla danego składnika. W takim przypadku zostanie użyte dopasowanie do najdłuższego wzorca. Na przykład:
<?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>
W powyższym przykładzie aktualizacje wszystkich składników platformy Eclipse zostaną pobrane z adresu URL1; wyjątkiem jest składnik org.eclipse.jdt
, którego aktualizacja zostanie pobrana z adresu URL2.
Pliki strategii aktualizacji nie zawierają tłumaczonych łańcuchów, dlatego nie wymagają specjalnej obsługi ustawień narodowych (NL). W tych plikach należy stosować kodowanie UTF-8.
Omówienie automatycznego wykrywania aktualizacji znajduje się w innym temacie. Ponieważ jednak mechanizm ten stanowi integralną część ogólnego rozwiązania aktualizacji, wspomniano o nim w tym miejscu. Automatyczne aktualizacje umożliwiają platformie Eclipse wyszukiwanie aktualizacji zgodnie z harmonogramem, na przykład przy każdym uruchomieniu platformy (ustawienie domyślne), codziennie, co tydzień itd.
Poniżej przypominamy wszystkie czynności wymagane do wdrożenia rozwiązania: