2013-05-17 25 views
6

Mam aplikację eclipse rcp, która używa projektu gemini. Ma dwie funkcje, a więc produkt oparty na cechach. Niektóre z naszych pakietów zależą od usługi, która została stworzona przez przedłużenie planu. Ale w rzeczywistości przedłużacz planu jest rozwiązywany tylko podczas uruchamiania i nie jest aktywowany. Dzisiaj pracujemy nad tym, wykonując kod w aktywatorach pakietów, który sprawdza, czy pakiet org.eclipse.gemini.blueprint.extender został uruchomiony, a jeśli nie, zaczyna się.Jak uruchomić autostart org.eclipse.gemini.blueprint.extender w aplikacji Eclipse Rcp opartej na funkcjach?

Dodanie pakietu do produktu. Z poziomem początkowym wynoszącym 3 i autoStart=true nie daje żadnego efektu. Myślę, że dzieje się tak dlatego, że nasz produkt opiera się na funkcjach. Czy to jest poprawne? Jaki jest najlepszy sposób na autostartowanie wzmacniacza?

Odpowiedz

2

Musisz edytować plik configuration/config.ini i dodać pakiet, który chcesz uruchomić, do właściwości osgi.bundles. Na przykład:

osgi.bundles=<existing entries>, [email protected]:start

+0

W zasadzie to działa (zaczyna wiązkę extender). Ale prowadzi to do dziwnego zachowania podczas aktywacji innych pakietów. Aktywacja nie może zostać zakończona, ponieważ wystąpią wyjątki 'ClassDefNotFound'. Myślę, że muszę się w to zagłębiać. – gregor

0

Czy próbowałeś ustawić poziom początkowy na 0 i automatyczne uruchamianie na true? Istnieje sugestia w linku this. Może być pomocna.