[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[p2-dev] Re: Error trying to partially p2.mirror EMF 2.5.0 update site

The issue here is that the metadata is incomplete, and p2 (p2.director, anyway - haven't tried w/ p2.mirror) only knows how to find foo.jar as foo.jar.pack.gz in a jar:file:/path/to/repo.zip!/. If you omit the jar:file: prefix or !/ suffix, or point at http://path/to/repo.zip, or even unpack the zip as file:/path/to/repo.zip_, p2 can't find the packed plugin jars.

(I've complained about this limitation but there's been no buy-in from the p2 devs so far that this ought to be fixed, mostly I suspect because there is a simple workaround and by fixing it they're encouraging "broken" repos to be produced. Ours is "broken" because it saves disk space and bandwidth; if we skip the packing step or include BOTH the packed and unpacked jars in the zip, the file gets much larger.)

That said, I've been able to successfully mirror from a "broken" repo zip like the EMF one using the Buckminster Aggregator.

See https://bugs.eclipse.org/bugs/show_bug.cgi?id=294832 for a quick way to get a director app, then use that to install Buckminster, and from there be able to do selective mirroring and even recategorization or features. There's also a Buckminster Aggregator Editor which lest you set up what to mirror graphically. Very cool, IMHO.

http://wiki.eclipse.org/Getting_Started_With_Aggregator_(Buckminster)
http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.dash/athena/org.eclipse.dash.commonbuilder/org.eclipse.dash.common.releng/tools/scripts/aggregateRepos.xml?root=Technology_Project&view=markup

Nick

Ed Merks wrote:
Mark,

I'm not sure what this means. Maybe it's better to ask on the p2 newsgroup or mailing list, or maybe someone else more knowledgeable will help.


Mark Melvin wrote:
Hi,

I am trying to partially mirror the EMF 2.5.0 P2 repository that I downloaded and I am getting an error. This could be a P2 thing, but I am wondering if someone could point me in the right direction. Here is my Ant call:

   <p2.mirror verbose="true" ignoreErrors="true">
     <repository location="file:${final.p2.repo.dir}" compressed="true"
                  name="EMF repository" />
     <source dir="${repoBaseLocation}/"
             includes="emf-xsd-Update-2.5*.zip"/>
     <iu id="org.eclipse.xsd.feature.group" />
     <iu id="org.eclipse.emf.ecore.feature.group" />
     <iu id="org.eclipse.emf.common.feature.group"/>
   </p2.mirror>


I get the following output:

[java] [p2.mirror] Problems resolving provisioning plan.
[java] [p2.mirror] Unable to satisfy dependency from org.eclipse.emf.common.feature.group 2.5.0.v200906151043 to org.eclipse.core.runtime 0.0.0.
[java] [p2.mirror] Unable to satisfy dependency from org.eclipse.xsd.feature.group 2.5.0.v200906151043 to org.eclipse.core.runtime 0.0.0.
[java] [p2.mirror] Unable to satisfy dependency from org.eclipse.emf.ecore.feature.group 2.5.0.v200906151043 to org.eclipse.core.runtime 0.0.0.
[java] [p2.mirror] Unable to satisfy dependency from org.eclipse.emf.common 2.5.0.v200906151043 to bundle org.eclipse.core.runtime [3.5.0,4.0.0].
[java] [p2.mirror] Unable to satisfy dependency from org.eclipse.emf.ecore 2.5.0.v200906151043 to bundle org.eclipse.core.runtime [3.5.0,4.0.0].
[java] [p2.mirror] Unable to satisfy dependency from org.eclipse.xsd 2.5.0.v200906151043 to bundle org.eclipse.core.runtime [3.5.0,4.0.0].
[java] [p2.mirror] Unable to satisfy dependency from org.eclipse.emf.ecore.change 2.5.0.v200906151043 to bundle org.eclipse.core.runtime [3.5.0,4.0.0].
[java] [p2.mirror] Unable to satisfy dependency from org.eclipse.emf.ecore.xmi 2.5.0.v200906151043 to bundle org.eclipse.core.runtime [3.5.0,4.0.0].
[java] [p2.mirror] Mirroring: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043 (Descriptor: canonical: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043)
[java] [p2.mirror] Mirroring: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043 (Descriptor: packed: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043)
[java] [p2.mirror] Messages while mirroring artifact descriptors.
[java] [p2.mirror] Artifact not found: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043.
[java] [p2.mirror] jar:file:/c:/Temp/emf-xsd-Update-2.5.0.zip!/plugins/org.ecli pse.emf.ecore_2.5.0.v200906151043.jar
[java] [p2.mirror] Artifact not found: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043.
[java]
[java] BUILD FAILED
[java] C:\Temp\emf_only.xml:39: Messages while mirroring artifact descriptors.
[java] Artifact not found: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043.Messag es while mirroring artifact descriptors.
[java] Artifact not found: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043.
[java] Artifact not found: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043.Messag es while mirroring artifact descriptors.
[java] Artifact not found: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043.Messag es while mirroring artifact descriptors.
[java] Artifact not found: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043.
[java] Artifact not found: osgi.bundle,org.eclipse.emf.ecore,2.5.0.v200906151043.
[java]
[java] Total time: 0 seconds


Ignoring unsatisfied dependencies to org.eclipse.core.runtime, it is failing to find org.eclipse.emf.ecore_2.5.0.v200906151043.jar in the zip file. I see it is there, but it is a .jar.pack.gz file. Do I need to do anything special for P2 to be able to deal with this, or is there a problem with the P2 repository provided on the website?

Any help would be appreciated.
Thanks,
Mark.

-- Nick Boldt :: http://nick.divbyzero.com