Łącz / agreguj repozytoria eclipse P2 / rozszerzalne repozytorium p2
With Maven / tycho build for Nodeclipse Eclipse plugin there is new P2 repozytorium every release.
Wydanie odbywa się na Bintray, który nie pozwala na aktualizację plików. Więc każda wersja idzie w swoim folderze.
BaseFolder
BaseFolder/VersionFolder1
BaseFolder/VersionFolder2
BaseFolder/VersionFolder3
Czy jest możliwe, aby BaseFolder
zostało przygotowane raz jako rozszerzalne repozytorium p2, a VersionFolderN
dodane później?
Aby był tylko jeden URL dla aktualizacji i platforma Eclipse mogła wykrywać aktualizacje w repozytorium.
1 answers
To, czego szukasz, to złożone repozytorium p2. Będziesz potrzebował tylko następujących dwóch plików w folderze podstawowym:
-
A
compositeContent.xml
o następującej treści:<?xml version='1.0' encoding='UTF-8'?> <?compositeMetadataRepository version='1.0.0'?> <repository name='Project XYZ Releases Repository' type='org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository' version='1.0.0'> <properties size='1'> <property name='p2.atomic.composite.loading' value='true'/> </properties> <children size='3'> <child location='VersionFolder1'/> <child location='VersionFolder2'/> <child location='VersionFolder3'/> </children> </repository>
-
A {[3] } o następującej, podobnej treści:
<?xml version='1.0' encoding='UTF-8'?> <?compositeArtifactRepository version='1.0.0'?> <repository name='Project XYZ Releases Repository' type='org.eclipse.equinox.internal.p2.artifact.repository.CompositeArtifactRepository' version='1.0.0'> <properties size='0'> </properties> <children size='3'> <child location='VersionFolder1'/> <child location='VersionFolder2'/> <child location='VersionFolder3'/> </children> </repository>
Gdy zostanie wydana nowa wersja, po prostu dodaj nowy folder jako dziecko w obu plikach.
Dwa pliki mogą być również skompresowane jako ZIP i nazwane compositeContent.jar
i compositeArtifacts.jar
, aby zapisać przepustowość sieci. Jednak to sprawia, że edycja plików trochę mniej praktyczna.
Równoległe repozytoria wydań Eclipse również używają tego podejścia. Na przykład, w momencie pisania tego, Eclipse Luna repozytorium zawiera tylko oryginalne wydanie i SR 1 (patrz compositeContent, compositeArtifacts ). SR 2 zostanie dodany później, dzięki czemu użytkownicy będą mogli otrzymywać aktualizacje bez konieczności konfigurowania nowego adresu URL repozytorium.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-17 17:25:05