b3 aggregator - Erfahrungen beim spiegeln von p2 Update Sites

X

xhi2018

Gast
Hallo,

ich versuche auf einem Intranet Server - sozusagen auf einer Intranet Update Site - unterschiedliche Plugins für eine Gruppe von Entwicklern bereitzustellen.

Ich will damit zum einen erreichen, dass für die Entwicklung einheitliche Plugins verwendet werden und zum anderen nicht jeder Entwickler die Plugins aus dem Internet zusammensuchen muß. Auch sollen auf dieser Intranet Update Site selbs entwickelte Plugins zur Verfügung gestellt werden.

Hierfür versuche ich mich gerade an dem b3 - aggregator und hab' so meine Probleme/Fragen damit. :oops:

Ich hab mittlerweile die notwendigen externen Update Site zusammengestellt und versuche über "Verify Repository" / "Build Repository" / "Clean then Build Repository" mir diese Intranet Update Site zu erstellen. Doch leider kommt es hierbei ständig zu irgendwelchen Problemen wie aktuell diesem hier:
Code:
Cannot complete the install because one or more required items could not be found.
Software being installed: all.contributed.content.feature.group 1.0.0
Missing requirement: SVNKit 1.3.5 Implementation (Optional) 2.2.2.I20110124-1700 
  (org.polarion.eclipse.team.svn.connector.svnkit16.feature.group 2.2.2.I20110124-1700) 
  requires 'org.eclipse.team.svn.feature.group [0.7.9.I20110101-1700,1.0.0)' 
  but it could not be found
Cannot satisfy dependency:
From: all.contributed.content.feature.group 1.0.0
To: org.polarion.eclipse.team.svn.connector.svnkit16.feature.group 2.2.2.I20100512-1900
Wenn ich den Fehler richtig verstehe, dann können Abhängigkeiten von
Code:
org.eclipse.team.svn.feature.group
zu
Code:
org.polarion.eclipse.team.svn.connector.svnkit16.feature.group
(oder andersherum) nicht aufgelöst werden... ???:L

Vor ein paar Tagen hatte ich beim selben Versuch einen ähnlichen Fehler allerdings andere Abhängigkeiten.

Wer von Euch nutzt auch noch den b3 - aggregator und mit welchem Ziel bzw. Erfahrungen. Hat es jemand schon mal geschafft Update Sites mit dem b3 - aggregator erfolgreich zu spiegeln bzw. zusammenzustellen :question:

Gruß & vielen Dank für Eure Erfahrungen!
 
G

Gonzo17

Gast
Servus,

ich bin auch grad dabei ihn zu nutzen und stoße, wie du auch, immer wieder auf unerklärliche Probleme.

Also zuerst einmal meinem Vorhaben. Ich versuche aus internen & externen Plug-Ins ein p2 repository zu bauen, aus dem sich dann später Buckminster bedienen kann, um unsere Komponenten und Produkte zu bauen. Ziel soll es sein, Komponenten einer bestimmten Version nicht immer neu bauen zu müssen und externe Komponenten nicht immer aus dem Internet ziehen zu müssen.

Mein Problem ist nun eigentlich recht trivial. Ich versuche Die Galileo Update Site und die Eclipse Project Update Site für 3.5 auf meinen Rechner zu spiegeln. Das funktioniert nicht, aber ich verstehe nicht warum. Als Grund liefert mir b3 immer, dass mehrere Versionen eines Plug-Ins vorhanden sind und nur eine verwendet werden kann. Eigentlich brauch ich auch nur 3.5.2, trotzdem finde ich keine Möglichkeit ohne größeren Aufwand (zB indem ich alle Features/Bundles angebe, die ich will) die Update Sites zu spiegeln.

Weiterhin stellt sich mir eine Frage, die vielleicht jemand beantworten kann, der sich mit b3 auskennt. Der eigentliche Sinn und Zweck, weshalb ich b3 überhaupt verwende, ist ja um die Zeit des Builds zu minimieren. b3 soll da eigentlich als eine Art Cache fungieren und Plug-Ins ziehen, wenn ich sie brauch, aber wenn das Plug-In schonmal gezogen wurde, solls lokal im Cache liegen. Kann das b3 überhaupt? Wenn b3 das nicht kann, dann versteh ich ehrlich gesagt auch nicht, wofür es b3 jetzt effektiv gibt, denn Update Sites zusammenbauen geht meines Wissens auch anders (gibts da nich was bei ANT?)

Gruß
 

Wildcard

Top Contributor
Mein Problem ist nun eigentlich recht trivial. Ich versuche Die Galileo Update Site und die Eclipse Project Update Site für 3.5 auf meinen Rechner zu spiegeln. Das funktioniert nicht, aber ich verstehe nicht warum. Als Grund liefert mir b3 immer, dass mehrere Versionen eines Plug-Ins vorhanden sind und nur eine verwendet werden kann. Eigentlich brauch ich auch nur 3.5.2, trotzdem finde ich keine Möglichkeit ohne größeren Aufwand (zB indem ich alle Features/Bundles angebe, die ich will) die Update Sites zu spiegeln.
Eclipse Update Sites sind nicht immer self contained und widerspruchsfrei, der b3 aggregator baut meines Wissens aber immer 'korrekte' Seiten die vollständig self contained sind.
Anstatt die komplette Update Site (inklusive aller Versionen) zu spiegeln solltest du vielleicht einfach die geünschten Kategorien auswählen und b3 selektiert per default die latest version jeder IU.
Weiterhin stellt sich mir eine Frage, die vielleicht jemand beantworten kann, der sich mit b3 auskennt. Der eigentliche Sinn und Zweck, weshalb ich b3 überhaupt verwende, ist ja um die Zeit des Builds zu minimieren. b3 soll da eigentlich als eine Art Cache fungieren und Plug-Ins ziehen, wenn ich sie brauch, aber wenn das Plug-In schonmal gezogen wurde, solls lokal im Cache liegen. Kann das b3 überhaupt? Wenn b3 das nicht kann, dann versteh ich ehrlich gesagt auch nicht, wofür es b3 jetzt effektiv gibt, denn Update Sites zusammenbauen geht meines Wissens auch anders (gibts da nich was bei ANT?)
b3 ist eigentlich der Nachfolger von Buckminster. Zur Zeit ist die b3 Build Engine und DSL allerdings noch nicht released. Das einzige deliverable das schon benutzbar ist, ist der b3 aggregator, der aus dem Buckminster Projekt herausgetrennt wurde und nun als Teil von b3 entwickelt wird.

Der b3 Aggregator ist kein Artifact Repository wie man sie von Maven kennt und kann daher auch nicht als ein Cache fungieren. Die Idee ist ein EMF Modell von p2 Repositories zu haben um auf deklarative Art und Weise IUs von verschiedenen Repositories in ein anderes Repository zu spiegeln.
Dafür gibt es primär 2 Anwendungsfälle:
1. Ein eigenes Firmen Repository aufzubauen über das Entwickler Plugins installieren können
2. Ein Repository zu bauen in dem Dependencies für automatisierte Builds liegen
 

Wildcard

Top Contributor
Wer von Euch nutzt auch noch den b3 - aggregator und mit welchem Ziel bzw. Erfahrungen. Hat es jemand schon mal geschafft Update Sites mit dem b3 - aggregator erfolgreich zu spiegeln bzw. zusammenzustellen
Ja, ich baue regelmäßig Repositories mit dem b3 Aggregator.

Zu deinem konkreten Problem:
Die Polarion Update Site ist AFAIK nicht self-contained, sondern ergänzt nur das main Eclipse Repository um Bundles die aus Lizenzgründen nicht bei Eclipse gehostet sein dürfen.
Versuch mal Helios als weiteres Mapped Repository einzubinden, damit die fehlenden Abhängigkeiten von dort gezogen werden können.
 
X

xhi2018

Gast
Hallo,
Ja, ich baue regelmäßig Repositories mit dem b3 Aggregator.
Zu deinem konkreten Problem:
Die Polarion Update Site ist AFAIK nicht self-contained, sondern ergänzt nur das main Eclipse Repository um Bundles die aus Lizenzgründen nicht bei Eclipse gehostet sein dürfen.
Versuch mal Helios als weiteres Mapped Repository einzubinden, damit die fehlenden Abhängigkeiten von dort gezogen werden können.
Danke für Deine Antwort :)

Die Update Site von Helios hab ich in meiner b3aggr Konfiguration eingebunden - meine ich es zumindest. Allerdings will ich nur Teile der Helios Update Site in "meiner" Intranet Update Site - dazu hab ich die Tage auch schon mal in diesem Forum gepostet.

Heute bekomme ich bei Versuch "meine" Intranet Update Site mit dem b3 Aggregator zu erstellen diesen Fehler...
Code:
Build failed! Exception was org.eclipse.core.runtime.CoreException: 
Unable to load repository p2:http://download.eclipse.org/releases/helios/
org.eclipse.core.runtime.CoreException: 
Unable to load repository p2:http://download.eclipse.org/releases/helios/
	at org.eclipse.b3.util.ExceptionUtils.fromMessage(ExceptionUtils.java:53)
	at org.eclipse.b3.util.ExceptionUtils.fromMessage(ExceptionUtils.java:49)
	at org.eclipse.b3.aggregator.engine.Builder.loadAllMappedRepositories(Builder.java:878)
	at org.eclipse.b3.aggregator.engine.Builder.run(Builder.java:603)
	at org.eclipse.b3.aggregator.presentation.AggregatorActionBarContributor$BuildRepoAction$1.run
(AggregatorActionBarContributor.java:267)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Keine Ahnung was heute wieder kaputt ist - jeden Tag andere Fehler/Probleme ;(
Kann das jemand bestätigen oder hat jemand eine Idee/Ahnung oder einen Tipp was der Grund dafür sein könnte ???:L

Gruß und Danke!
 
Zuletzt bearbeitet von einem Moderator:

Wildcard

Top Contributor
Keine Ahnung was heute wieder kaputt ist - jeden Tag andere Fehler/Probleme
Meistens sind es ganz einfach Server Probleme. Die Eclipse Update Sites stehen arg unter Stress.
Meistens hilft eine halbe Stunde was anderes machen und dann neu versuchen :)
 
X

xhi2018

Gast
Meistens sind es ganz einfach Server Probleme. Die Eclipse Update Sites stehen arg unter Stress.
Meistens hilft eine halbe Stunde was anderes machen und dann neu versuchen :)
Hallo,

vielen Dank für Deine Hilfe!
Es scheint also mehr oder weniger "normal" zu sein, dass es immer wieder zur Problemen & Fehlermeldungen kommt...?!
Vielleicht kannst Du mir noch einen Tipp. Ich versuche über die Intranet Update Site auch Aktualisierungen von Eclipse zu ermöglichen - aber keine Release Updates sondern nur Updates innerhalb eines Release. Also Updates von Eclipse 3.6 auf Eclipse 3.6.1, Eclipse 3.6.2 usw. - usw.
Mit dem b3 aggregator hole ich mir schon einige IU zusammen, aber aufgrund dieses Fehlers nehme ich an, das ich noch das eine oder andere IU benötige.

Code:
Your original request has been modified.
....
Cannot complete the install because of a conflicting dependency.
  Software being installed: Eclipse Platform 3.6.1.r361_v20100909-9gF78GrkFqw7GrsZnvz0JWNTeb6fue6896L (org.eclipse.platform.feature.group 3.6.1.r361_v20100909-9gF78GrkFqw7GrsZnvz0JWNTeb6fue6896L)
  Software currently installed: Eclipse SDK 3.6.0.I20100608-0911 (org.eclipse.sdk.ide 3.6.0.I20100608-0911)
  Only one of the following can be installed at once: 
    Workbench 3.6.1.M20100826-1330 (org.eclipse.ui.workbench 3.6.1.M20100826-1330)
    Workbench 3.6.0.I20100603-1100 (org.eclipse.ui.workbench 3.6.0.I20100603-1100)
  Cannot satisfy dependency:
    From: Eclipse Platform 3.6.0.v20100602-9gF78GpqFt6trOGhL60z0oEx3fz-JKNwxPY (org.eclipse.platform.feature.group 3.6.0.v20100602-9gF78GpqFt6trOGhL60z0oEx3fz-JKNwxPY)
    To: org.eclipse.rcp.feature.group [3.6.0.v20100519-9OArFKvFtsd7WLUKh-DcYTS]
  Cannot satisfy dependency:
    From: Eclipse Platform 3.6.1.r361_v20100909-9gF78GrkFqw7GrsZnvz0JWNTeb6fue6896L (org.eclipse.platform.feature.group 3.6.1.r361_v20100909-9gF78GrkFqw7GrsZnvz0JWNTeb6fue6896L)
    To: org.eclipse.rcp.feature.group [3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T]
  Cannot satisfy dependency:
    From: Eclipse RCP 3.6.0.v20100519-9OArFKvFtsd7WLUKh-DcYTS (org.eclipse.rcp.feature.group 3.6.0.v20100519-9OArFKvFtsd7WLUKh-DcYTS)
    To: org.eclipse.ui.workbench [3.6.0.I20100603-1100]
  Cannot satisfy dependency:
    From: Eclipse RCP 3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T (org.eclipse.rcp.feature.group 3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T)
    To: org.eclipse.ui.workbench [3.6.1.M20100826-1330]
  Cannot satisfy dependency:
    From: Eclipse Project SDK 3.6.0.v20100427-7Q7m-DPY2dP0s7TnP1vxqsprbrvrHJwHMVz0mb8mhRXmu (org.eclipse.sdk.feature.group 3.6.0.v20100427-7Q7m-DPY2dP0s7TnP1vxqsprbrvrHJwHMVz0mb8mhRXmu)
    To: org.eclipse.platform.feature.group [3.6.0.v20100602-9gF78GpqFt6trOGhL60z0oEx3fz-JKNwxPY]
  Cannot satisfy dependency:
    From: Eclipse SDK 3.6.0.I20100608-0911 (org.eclipse.sdk.ide 3.6.0.I20100608-0911)
    To: org.eclipse.sdk.feature.group [3.6.0.v20100427-7Q7m-DPY2dP0s7TnP1vxqsprbrvrHJwHMVz0mb8mhRXmu]

Wenn ich das Update gegen die offizielle Helios Update Site durchführe und das IU
Code:
Eclipse SDK	3.6.1.M20100909-0800	org.eclipse.sdk.ide
aktualisiere ist die Aktualisierung von Eclipse 3.6 auf Eclipse 3.6.1 ohne Fehler/Probleme möglich.

Nun meine Frage/Problem:
Ich hab es bisher noch nicht geschafft, welche IU ich in die b3 aggregator Konfiguration eintragen muß, damit ich über meine Intranet Update Site eine Aktualisierung von Eclipse durchführen kann.

Gruß & herzlichen Dank für jeden Tipp!!
 
G

Gonzo17

Gast
So wie ich das verstehe kannst du innerhalb einer Update Site, die der b3 aggregator erstellt, nur eine Version einer IU hinterlegen. Das liegt wohl daran, dass der b3 aggregator Update Sites bauen will, die auf jeden Fall verwendet werden können, es müssen also alle Abhängigkeiten eindeutig aufgelöst werden. (wenn ich das alles richtig kapiert habe)
 

Wildcard

Top Contributor
Was spricht denn dagegen die Update Site einfach neu zu bauen wenn ein neues Service Release kommt? Durchaus möglich das man den Aggregator auch verwenden kann um mehr als eine Version zu spiegeln, allerdings habe ich ihn nie in dieser Form verwendet. Für diesen Fall würde ich mich an die b3 Newsgroup wenden.
 
X

xhi2018

Gast
Hallo,
So wie ich das verstehe kannst du innerhalb einer Update Site, die der b3 aggregator erstellt, nur eine Version einer IU hinterlegen. ...
mir würde es ja reichen, wenn auf meiner Intranet Update Site nur eine - die aktuellste - Version einer IU liegen würde.
Was spricht denn dagegen die Update Site einfach neu zu bauen wenn ein neues Service Release kommt?
Dagegen spricht überhaupt nichts - wenn es funktionieren würde, dann hätte ich damit kein Problem.
Durchaus möglich das man den Aggregator auch verwenden kann um mehr als eine Version zu spiegeln, ....
Ich möchte gar nicht mehrere Versionen einer IU auf meiner Intranet Update Site zur Verfügung stellen. Vielleicht hab ich mich etwas falsch oder unklar ausgedrückt. Was ich möchte ist folgendes:

Ich installiere auf die Rechner der Entwickler eine neue Eclipse Version. Sagen wir mal das wäre Eclipse 3.6 (Helios). Irgendwann einmal wird ein Update - Service Release - von Eclipse veröffentlicht. Dieses Service Release ist dann die Version 3.6.1 und irgendwann später dann ein weiteres Service Release mit der Version 3.6.2 usw. usw. Die Aktualisierung auf diese Service Release möchte ich über meine Intranet Update Site zur Verfügung stellen!
Neue Eclipse Versionen 3.7 oder 4.0 installiere ich dann wieder als Vollversion auf die Rechner der Entwickler (also nicht über die Update Site) wobei ich dabei die alte Vorversion von den Rechner lösche.

Bei genau diesem Fall - ich habe die Eclipse Version 3.6(.0) installiert - und möchte nun die Aktualisierung auf das Service Release 3.6.1 - über meine per b3 aggregator zusammengestellte Intranet Update Site - durchzuführen bekomme ich den Fehler von oben. Anscheinend kann wegen einer/mehreren fehlenden IU auf meiner Intranet Update Site eine Abhängigkeit nicht aufgelöst werden. So verstehe ich die Fehlermeldung. Leider kann ich nicht erkennen, welche IU ich dazu noch mit dem b3 aggregator in meine Intranet Update Site aufnehmen müsste. Vielleicht hat ja jemand eine Idee oder könnte mir einen Tipp geben... :bahnhof:
Diese IU
Code:
Eclipse SDK	3.6.1.M20100909-0800	org.eclipse.sdk.ide
kann ich leider nicht finden...???:L

Ich hatte gehofft, dass ich solche Service Release Updates - wie beschrieben - über den b3 aggregator auf meine Intranet Update Site hinterlegen könnte, oder geht sowas generell nicht und ich versteh den b3 aggregator nur falsch:question:

Gruß & vielen Dank für Eure Hilfe:exclaim:
 

Wildcard

Top Contributor
Ja, das geht mit dem Aggregator.
Wenn du zB nur das Eclipse SDK + allen Abhängikeiten spiegeln möchtest, dann leg ein neues Product Mapping (ich habe die genau Benamsung gerade nicht im Kopf) an und wähle die IU aus.
Es gibt verschiedene Arten von Mappings, IUs, Bundles, Features, Products, Categories,...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
X Teile einer p2 UpdateSite mit b3 aggregator spiegeln Plattformprogrammierung 4
M Eclipse Probleme beim Ausführen eines Programms Plattformprogrammierung 3
G Nullpointer im Debugger, jedoch nicht beim normalen Starten Plattformprogrammierung 12
W Eclipse vergißt beim Exportieren Resources-Ordner Plattformprogrammierung 11
C Eclipse: Notification beim umbennen von Methoden? Plattformprogrammierung 4
M OSGi Probleme / Unklarheiten beim laden von DLL's Plattformprogrammierung 4
dzim OSGi Problem beim Verwenden von Declaratice Services Plattformprogrammierung 18
L RCP Exception beim Ausführen von BIRT Application Plattformprogrammierung 2
Mike90 Error beim Öffnen einer RCP-App Plattformprogrammierung 2
W SWTException beim Schließen einer ViewPart Plattformprogrammierung 13
M EMF Model Transaction Fehler beim Updaten eines Graphiti-Pictogramms Plattformprogrammierung 2
L RCP Detached View beim Starten des RCPs? Plattformprogrammierung 3
lumo RCP Beim wechsel der Perspektive automatisch Views aktivieren Plattformprogrammierung 6
jemandzehage Kurze Fehlernachricht beim starten in Eclipse Plattformprogrammierung 5
dzim Veränderte Abhängigkeiten beim Umstieg von 3.5.2 auf 3.6.1 Plattformprogrammierung 9
J RCP, Fehler beim MultiPageEditor, Widget is disposed Plattformprogrammierung 4
G Probleme beim Export Plattformprogrammierung 2
dzim Problem beim neuanlegen von Composites Plattformprogrammierung 4
S Plugin: View beim Button-Klick austauschen Plattformprogrammierung 7
K Keine EXE beim Export Plattformprogrammierung 10
M Teilweise Probleme beim Updaten von Plugins Plattformprogrammierung 3
S Versionsprobleme beim Erstellen eines Plugins Plattformprogrammierung 6
S View speichern/laden beim schließen Plattformprogrammierung 14
B Simple Action beim Speichern in Eclipse... Plattformprogrammierung 2
M Problem beim Zugriff auf Klasse aus Fragment in einem anderen Plugin Plattformprogrammierung 3
N Beim starten addPartListener() benutzen Plattformprogrammierung 2
dzim Nerviges Gepiepe beim Nutzen von KeyListenern & Scrollbare Composites Plattformprogrammierung 2
dzim java.lang.ClassNotFoundException beim laden eines Plugins Plattformprogrammierung 10
T [RCP] Was passiert genau beim laden eines Plugins? Plattformprogrammierung 4
dzim Fehler beim starten eines Produkts Plattformprogrammierung 5
V Eclipse RCP Encoding beim Export Plattformprogrammierung 4
V Ich brauche hilfe beim Eclipse RCP Export Plattformprogrammierung 8

Ähnliche Java Themen

Neue Themen


Oben