Tycho eclipse-repository
opakowanie typu builds product distributions z tej samej technologii (tzw p2) użyć także, gdy na przykład instalując nową funkcję do swojej Eclipse IDE. Ma to tę zaletę, że w przeciwieństwie do innych technologii kompilacji, nie musisz ręcznie określać wszystkich zależności pakietów, które chcesz mieć w swoim produkcie, ale Tycho/p2 automatycznie uwzględni je dla ciebie. (Jest to ważne, ponieważ w przeciwnym razie pakiety nie byłyby uruchamiane w czasie wykonywania).
Z drugiej strony może to być również wadą: Tycho/p2 zawiera również pewne opcjonalne zależności, które wolałbyś chcieć wykluczyć ze swojego produktu.
Nie ma opcji, aby powiedzieć Tycho, aby nie zawierał żadnych opcjonalnych zależności (ponieważ p2 nie ma tej opcji). Jednak można określić opcjonalne pakiety, których nie chcesz, i jednoznacznie wykluczyć je z target platform o następującej konfiguracji:
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho-version}</version>
<configuration>
<filters>
<filter>
<type>eclipse-plugin</type>
<id>unwanted.bundle.id</id>
<removeAll />
</filter>
</filters>
</configuration>
</plugin>
Następnie build produkt nie może już zobaczyć wykluczone tobołek, a pominięcie go z instalacja.
Uwaga: Jeśli po dodaniu powyższej konfiguracji pojawi się błąd rozwiązywania zależności, jest coś, co nie jest opcjonalne, wymaga pakietu. Chociaż czytanie jest nieco trudniejsze, komunikat o błędzie powie ci łańcuch zależności, które prowadzą od czegoś, co budujesz do usuniętego pakietu.