Da ich gerade am Überlegen bin, ob ich eine eigene Update Site für die Nightly Builds des Eclipse PDTs erstelle, musste ich erst einmal schauen, wie denn der Update-Mechanismus überhaupt funktioniert.
Sobald in Eclipse die URL zu einer Update Site angegeben wurde, wird dort die Datei site.xml (http://wap.ecw.de/eclipse/update/site.xml) gesucht.
Die site.xml enthält die verfügbaren JAR-Archive und sieht folgendermaßen aus:
PDT Nightly Build Update SiteDie angegebene JAR-Datei enthält folgende Ordnerstruktur:
- /META-INF/MANIFEST.MF
- /META-INF/eclipse.inf
- /eclipse_update_120.jpg
- /epl-v10.html
- /feature.properties
- /feature.xml
- /license.html
Am wichtigsten ist dabei die feature.xml, die z.B. so aussehen kann:
<id="org.eclipse.php_feature" label="%featureName" version="2.0.200808011-7H--9qMqC" provider-name="%providerName" plugin="org.eclipse.php"> %description %license <id="org.eclipse.php.core" download-size="0" install-size="0" version="2.0.200808011"/> <id="org.eclipse.php.debug.core" download-size="0" install-size="0" version="2.0.200808011" unpack="false"/> <id="org.eclipse.php.debug.ui" download-size="0" install-size="0" version="2.0.200808011" unpack="false"/> <id="org.eclipse.php.server.core" download-size="0" install-size="0" version="2.0.200808011" unpack="false"/> id="org.eclipse.php.server.ui" download-size="0" install-size="0" version="2.0.200808011" unpack="false"/> <id="org.eclipse.php.ui" download-size="0" install-size="0" version="2.0.200808011" unpack="false"/> <id="org.eclipse.php" download-size="0" install-size="0" version="2.0.200808011" unpack="false"/> <id="org.eclipse.php.debug.daemon" download-size="0" install-size="0" version="2.0.200808011" unpack="false"/> <id="org.eclipse.php.help" download-size="0" install-size="0" version="2.0.200808011" unpack="false"/>An sich ist die Umsetzung des Scripts relativ einfach: Am Morgen wird das letzte erfolgreiche Nightly und Integration Build von der Downloadseite des PDT-Projekts geladen, danach wird die ZIP-Datei entpackt und eine neue feature.jar mit der o.g. feature.xml erstellt. Die Plugins müssen dann unter bspw. http://wap.ecw.de/eclipse/update/plugins liegen.
0 Comments