[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [equinox-dev] RE: Need help building a product with p2
|
I tried the .product build again, just adding in
org.eclipse.platform and a couple of others to see if I got the
org.eclipse.rcp_0.0.0 error again. I got the rcp error, but no version
number. Further up a bit in the output, I see some errors like
this:
The versions appear to be from Eclipse 3.2.1! So
there must be something fishy on our build server. We're definitely
running from Eclipse 3.4, but I'm thinking maybe there's something cached
somewhere, or some environment variable or something (ECLIPSE_HOME?).
Anyone know what might affect this?
Thanks,
Warren
In red.
<Warren.Paul@xxxxxxxxx> Sent by: equinox-dev-bounces@xxxxxxxxxxx
06/11/2008 03:21 PM
Please respond
to Equinox development mailing list
<equinox-dev@xxxxxxxxxxx> |
|
To
| <equinox-dev@xxxxxxxxxxx>
|
cc
|
|
Subject
| RE: [equinox-dev] RE: Need help
building a product with p2 |
|
Hi Andrew, See my responses below. Thanks,
Warren
From: equinox-dev-bounces@xxxxxxxxxxx
[mailto:equinox-dev-bounces@xxxxxxxxxxx] On Behalf Of ext Andrew
Niefer
Sent: Wednesday, June 11, 2008 2:06 PM
To: Equinox
development mailing list
Subject: RE: [equinox-dev] RE: Need help
building a product with p2
Warren,
A) If you are just unziping GEF, EMF etc over the
platform you must run that platform once in order for those bundles to be
discovered and installed. Then you can use the director to install your
bundles into that. Alternatively you can just use the director to install
the GEF etc bundles into the platform.
B) This should work, however we suggest that you use
the p2 director to install into a new location instead of trying to create the
p2 directory in that install. We haven't seen your problem with the stack
trace below, this looks like the install is not set up properly, independent of
p2. (As if org.eclipse.equinox.common is missing).
[WP] I tried both ways.
If I install into a different directory, I only get p2, features, and
plugins directories. I don't get any configuration, launcher, etc.
If I try to use those from the other install, I get the same error as I do
when just directing into that install. [AN] This basically means your metadata is missing IUs for the launcher
etc. Try using "-config" as an argument to the metadata generator instead
of "-source". See the "Existing Non-p2 Eclipse Application" section of the
metadata generator help. However, I do believe that you will get better
product metadata using (C).
C)
Instead of trying to compose your product from pieces, you could do a product
build. Write a .product file that includes everything your product needs
and use PDE/Build's productBuild.xml with the platform + GEF etc in the base
location. Turn on p2 metadata generation in the build and the result will
be a repo that you can install from.
[WP] I tried
this as well. It works grand from the PDE UI product export, but not from
a headless build. If I have any org.eclipse.* features in my product file,
I get an error during the headless build that org.eclipse.rcp_0.0.0 can't be
found. To work around that, I only build our features from the .product
file, and user the packager to gather the org.eclipse. bundles we need.
[AN] If it works from the UI but not
headless then I can only guess that there is something wrong with the setup.
You will need the delta pack to get the launchers you need. Make
sure everything is in your baseLocation. Export is a headless build under
the covers, the biggest difference is PDE/UI tells us where to find
everything. Doing the metadata
generation from the product build seems to generate good data, but I think
there's a timing bug. When I run that on our build server, I get an error
during a cleanup ant task in the generated ant scripts. It's trying to
delete some stuff that's still in use. if I wait a few seconds it would
work, but I don't control the call to the cleanup task. It seems the
metadata generation completes but hasn't released all of the plugins yet for
some reason. [AN] We have not seen this
kind of issue in our own builds, can you please raise a bug with the details.
I'm not sure which clean task you are refering to, if it is the one in the
customTargets.xml, you can define "noclean=true" to turn it off. Another
possibility would be to use the custom Assembly steps ("Customizing a Headless
Build" in the RC4 help). The pre.archive task will be called after
metadata generation, as well there is more metadata generation done at the end
of the package phase and customTargets.xml/postPackag occurs immediately
afterward. You could try putting custom ant in these tasks to introduce a
delay if necessary. Maybe I'll
go back and try the headless product build including org.eclipse.* features with
RC4. That's obviously the easiest and most desirable way, and it works
from the UI. Is there a way to see exactly what the product export from
the UI is doing? [AN] The only way would
be to launch a self hosted eclipse in the debugger and export from there.
You could then use the debugger to watch what PDE/UI is doing. (Code
is in org.eclipse.pde.core, and things would start in
ProductExportOperation.run) Is
the delta pack necessary fo doing product builds, or just for RCP apps?
That wasn't clear to me from the docs. I tried it both ways and
didn't see a difference, so I assume it's not needed. [AN] Yes the delta pack is necessary for headless product builds.
Exporting from the UI can work without it as the UI can take executables
from the running eclipse, but headless build does not do this.
In RC4 there is help docs
that might be helpful for you:
1) Platform Plug-in Developer Guide -> Programmer's Guide ->
Packaging and delivering Eclipse based products -> Provisioning platform (p2)
-> Installing
software using p2 director application
-> p2 metadata generation
2) Plug-in Development Environment Guide ->
Tasks
PDE Build -> Automated Building of
RCP applications from a product configuration file
PDE Build Advanced Topics -> PDE Build Integration with
p2
-Andrew
<Warren.Paul@xxxxxxxxx> Sent by:
equinox-dev-bounces@xxxxxxxxxxx
06/11/2008 11:07 AM
Please respond
to Equinox development mailing list
<equinox-dev@xxxxxxxxxxx> |
|
To
| <equinox-dev@xxxxxxxxxxx>
|
cc
|
|
Subject
| RE: [equinox-dev] RE: Need help
building a product with p2 |
|
I hate being a
pest, but this is the last day I have to get p2 working for our product.
If it's not working today, I have to disable it and use the old school
updater. At this point I'm just not convinced that I'm even doing the
right thing, so if someone could please chime in and tell me the expected
approach to p2-izing a complete product.
Should I:
A) Build our
product (features/plugins), generate p2 metadata for it, and then install it
using the p2 director into a fresh unzip of the platform
(eclipse-platform-3.4RC4-win32.zip), gef (GEF-runtime-3.4.0RC4.zip), etc, and
have it just update the p2 directory coming from the platform runtime archive?
My assumption here is that GEF, EMF, etc won't be updatable since nothing
ever p2-ized them (e.g. no p2 stuff in the GEF archive).
B) Build our product and
extract it into a fresh unzip of the platform
(eclipse-platform-3.4RC4-win32.zip), gef (GEF-runtime-3.4.0RC4.zip), etc, minus
the p2 directory from the platform runtime archive, and then generate p2
metadata for all of it. Then use the p2 director to create the p2
directory in this install. This is the approach I have been trying but
always get the 0.0.0 version errors for p2 plugin dependencies.
C) Something
else?
Thanks,
Warren
From: equinox-dev-bounces@xxxxxxxxxxx
[mailto:equinox-dev-bounces@xxxxxxxxxxx] On Behalf Of ext
Warren.Paul@xxxxxxxxx
Sent: Tuesday, June 10, 2008 3:15
PM
To: equinox-dev@xxxxxxxxxxx
Subject: RE: [equinox-dev]
RE: Need help building a product with p2
I'm about to give up. I've spent too long
on this already and don't feel like I'm much closer to having it working than I
was this time last week. Here's where I'm at. Any advice would be
greatly appreciated.
- I build our product configuration which gives me a zip
of our features, plugins, and root files.
- I run the packager on a clean install of the
platform, emf, gef, etc. which gives me a zip of all of those with the features
we don't want removed.
- I extract those two into a product layout. There is no p2
directory and no p2 references in the config.ini file. I can run this
product with no problems, but it does generated a p2 directory, and I launch the
updater.
I _think_ I'm supposed to run the p2 metadata generator on the entire
product layout (platform, emf, gef, our stuff, etc). That should allow all
features/plugins/root files to be updated, correct? The generation works
OK. Then I run the p2 director using the generated metadata.
Depending on how it feels when I run it, it will either generate a p2
directory only, or it will generate that plus features/plugins. This is
with the exact same everything, same eclipse, same machine, same cmd line.
No errors either way, so I have very little trust that the tools are
working correctly at any given time. Anyway, I put the p2 directory in the
product layout and run it, and I always get the error:
!ENTRY
org.eclipse.equinox.p2.reconciler.dropins 4 0
2008-06-05
22:48:18.007
!MESSAGE
!STACK
0
org.osgi.framework.BundleException: The bundle could not be
resolved.
Reason: Missing Constraint: Require-Bundle:
org.eclipse.equinox.common;
bundle-version="0.0.0"
at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHo
st.java:305)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractB
undle.java:355)
at
org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framewor
k.java:1074)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles
(StartLevelManager.java:616)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(Start
LevelManager.java:508)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLev
el(StartLevelManager.java:299)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent
(StartLevelManager.java:489)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventMana
ger.java:211)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventMa
nager.java:321)
From: equinox-dev-bounces@xxxxxxxxxxx
[mailto:equinox-dev-bounces@xxxxxxxxxxx] On Behalf Of ext Andrew
Niefer
Sent: Friday, June 06, 2008 2:35 PM
To: Equinox
development mailing list
Subject: RE: [equinox-dev] RE: Need help
building a product with p2
What version of eclipse are you using? You could try
I20080606-0100. There were a couple of bug fixes regarding 0.0.0
versions.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=233816
I'm not sure about the
absolute paths in the config.ini. Perhaps -roaming would help?
Also, in that build are some
freshly written docs that may be useful:
Plug-in Development Environment Guide -> Tasks
-> PDE Build advanced Topics -> PDE Build Integration with p2
Platform Plug-in Developer Guide
-> Programmer's Guide -> Packaging and delivering Eclipse based Products
-> Provisioning platform (p2)
-Andrew
<Warren.Paul@xxxxxxxxx> Sent by:
equinox-dev-bounces@xxxxxxxxxxx
06/06/2008 09:43 AM
Please respond
to Equinox development mailing list
<equinox-dev@xxxxxxxxxxx> |
|
To
| <equinox-dev@xxxxxxxxxxx>
|
cc
|
|
Subject
| RE: [equinox-dev] RE: Need help
building a product with p2 |
|
After much trial and error, I
have our product being built and packaged
using the steps I described below.
Basically this:
- build our product config
- use the packager to
pull the desired bits from the Eclipse SDK
- extract the product and eclipse
bits into a product layout
- run the p2 metadata generator on that
layout
- run the p2 director on the generated metadata to generate the
p2
directory in the product layout
Unfortunately, the product
fails to launch. The first problem is that
the generated config.ini
file has a full path to a plugin on the
build
server:
osgi.bundles=reference\:file\:/D\:/Products/Carbide/Tommy_product/Produc
t_Layout/eclipse/plugins/org.eclipse.equinox.p2.reconciler.dropins_1.0.0
.v20080529-1800.jar@4\:start
Any
idea why? Is there a hidden option for full paths or something?
Any way
to debug this?
Anyway, I change that manually
to
osgi.bundles=reference\:file\:org.eclipse.equinox.p2.reconciler.dropins_
1.0.0.v20080529-1800.jar@4\:start
and
launch again. Now I get the errors below. It would appear that
the
p2 info contains 0.0.0 as required bundle versions for some bundles.
I
looked through the content.xml file and do see 0.0.0 is some
locations.
The generator and director both ran without errors, and nothing
was
generated in the .log file. Again, I'm not sure how to debug
this
problem. Any help would be greatly appreciated. I've
basically spent
the entire week trying to get this to work to no avail and
it's been a
very frustrating experience.
:)
Thanks,
Warren
!ENTRY
org.eclipse.equinox.p2.reconciler.dropins 4 0
2008-06-05
22:48:18.007
!MESSAGE
!STACK
0
org.osgi.framework.BundleException: The bundle could not be
resolved.
Reason: Missing Constraint: Require-Bundle:
org.eclipse.equinox.common;
bundle-version="0.0.0"
at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHo
st.java:305)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractB
undle.java:355)
at
org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framewor
k.java:1074)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles
(StartLevelManager.java:616)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(Start
LevelManager.java:508)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLev
el(StartLevelManager.java:299)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent
(StartLevelManager.java:489)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventMana
ger.java:211)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventMa
nager.java:321)
!ENTRY
org.eclipse.osgi 2 0 2008-06-05 22:48:18.069
!MESSAGE One or more bundles are
not resolved because the following root
constraints are not
resolved:
!SUBENTRY 1 org.eclipse.osgi 2 0 2008-06-05
22:48:18.069
!MESSAGE
Bundle
initial@reference:file:plugins/org.eclipse.equinox.p2.reconciler.dropins
_1.0.0.v20080529-1800.jar/
was not resolved.
!SUBENTRY 2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.query_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing required bundle
org.eclipse.equinox.common_0.0.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.configurator_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.director_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.metadata.query_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.spi.p2.metadata.repository_0.0.
0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.artifact.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.artifact.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.metadata.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.extensionlocation_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing required
bundle
org.eclipse.equinox.p2.touchpoint.eclipse_0.1.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported package
org.eclipse.equinox.app_1.0.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.core.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.metadata_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.engine_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.spi.p2.artifact.repository_0.0.
0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.spi.p2.core.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.metadata.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.update_0.0.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.core_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.directorywatcher_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.069
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.core.helpers_0.0.0.
!ENTRY
org.eclipse.osgi 2 0 2008-06-05 22:48:18.085
!MESSAGE The following is a
complete list of bundles which are not
resolved, see the prior log entry for
the root cause if it exists:
!SUBENTRY 1 org.eclipse.osgi 2 0 2008-06-05
22:48:18.085
!MESSAGE
Bundle
initial@reference:file:plugins/org.eclipse.equinox.p2.reconciler.dropins
_1.0.0.v20080529-1800.jar/
[1] was not resolved.
!SUBENTRY 2 org.eclipse.equinox.p2.reconciler.dropins 2
0 2008-06-05
22:48:18.085
!MESSAGE Missing required bundle
org.eclipse.equinox.common_0.0.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing required
bundle
org.eclipse.equinox.p2.touchpoint.eclipse_0.1.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported package
org.eclipse.equinox.app_1.0.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.core.helpers_0.0.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.extensionlocation_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.artifact.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.metadata.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.p2.update_0.0.0.
!SUBENTRY 2
org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.configurator_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.artifact.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.core_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.core.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.director_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.directorywatcher_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.engine_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.metadata_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.metadata.query_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.metadata.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.p2.query_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.spi.p2.artifact.repository_0.0.
0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.spi.p2.core.repository_0.0.0.
!SUBENTRY
2 org.eclipse.equinox.p2.reconciler.dropins 2 0
2008-06-05
22:48:18.085
!MESSAGE Missing imported
package
org.eclipse.equinox.internal.provisional.spi.p2.metadata.repository_0.0.
0.
-----Original
Message-----
From:
equinox-dev-bounces@xxxxxxxxxxx
[mailto:equinox-dev-bounces@xxxxxxxxxxx] On
Behalf Of ext
Warren.Paul@xxxxxxxxx
Sent: Tuesday, June 03, 2008 3:04
PM
To: equinox-dev@xxxxxxxxxxx
Subject: [equinox-dev] RE: Need help
building a product with p2
I finally have the p2 director running and
generating good data.
Unfortunately, I don't know what fixed it. :)
The cmd line is exactly
the same. I was getting JVM terminated
dialogs after the p2 director
ran for a couple of minutes. I rebooted
my machine, installed RC3 (from
RC2), and tried again and got the JVM
terminated once again. Then I did
the same cmd line but also passed
-clean. It worked, and has been
working since!
More problems
though. I still can't get the product build to package
any org.eclipse
stuff. Maybe it's not supposed to? I gave up that
route and
decided to try using the Eclipse packager. I copied the
template files
and listed the features I was interested in. It runs and
creates the
zip file, but then I get this error:
BUILD
FAILED
C:\Eclipse_3.4RC3\eclipse\plugins\org.eclipse.pde.build_3.4.0.v20080528\
scripts\
package.xml:86:
The following error occurred while executing this
line:
C:\Eclipse_3.4RC3\eclipse\plugins\org.eclipse.pde.build_3.4.0.v20080528\
scripts\
package.xml:51:
The following error occurred while executing this
line:
C:\testpackager3\workingPlace\package.all.xml:21: The following
error
occurred w hile executing this
line:
C:\testpackager3\workingPlace\package.all.xml:15: The following
error
occurred w hile executing this
line:
C:\Dev\Tommy\debug\eclipse\workspace\com.nokia.sdt.releng.tommybuilder\c
arbide.c
pp2\packager\customTargets.xml:16:
The following error occurred while
executing this
line:
C:\testpackager3\workingPlace\package..win32.win32.x86.xml:1600:
C:\testpackager
3\workingPlace\tmp\eclipse\win32.win32.x86\eclipse
not found.
The generated Ant script is referencing a directory it never
created.
No idea why.
Another issue I've run into is the headless
product build fails if I
include the generate.p2.metadata stuff in the
build.properties file. It
fails when trying to delete the tmp directory
because some of the
plugins are in use. The appear to still be in use
by the p2 metadata
generator. If I remove that stuff from the
build.properties file it
build fine. For now I'm going to just try to
run the metadata generator
from the command line myself after the product
build.
So just to make sure I'm on the right track, here's my current
thinking
on how it should work. Please correct me if I'm
wrong.
1) Create an Eclipse install with whatever we need to do our
builds and
whatever we want to package that's pre-built (platform, cvs, emf,
gef,
etc.)
2) Use that install to build our product from the cmd line.
Our product
only lists our features (no org.eclipse.*).
3) Use the
packager to pull out the features we want to package from the
Eclipse install
in (1)
4) Create a complete product layout from (2) and (3)
5) Run the p2
metadata generator on (4)
6) Run the p2 director on (5), generating a p2
directory in
(4)
Thanks,
Warren
------------------------------
Message:
3
Date: Sat, 31 May 2008 07:41:37 -0500
From:
<Warren.Paul@xxxxxxxxx>
Subject: [equinox-dev] RE: Need help building a
product with p2
To: <equinox-dev@xxxxxxxxxxx>
Message-ID:
<78988A0C817D8B4F9734DE8EFCEA6F67019A4CFC@xxxxxxxxxxxxxxxxxxxxxx>
Content-Type:
text/plain;
charset="us-ascii"
Hi Andrew,
Changing the paths to URL's helped.
It now finds the product id
installIU, and takes a couple of minutes.
But it eventually comes back
with "Installation failed". I wasn't
sure what to put for profile. I
assume PlatformProfile? I tried
that, SDKProfile, and remove the
profile option altogether. I get the
same error each time. Is there a
way to get more details on what
failed? A verbose option perhaps?
Here's exactly how I'm invoking
the director:
eclipsec.exe -nosplash
-application
org.eclipse.equinox.p2.director.app.application
-metadataRepository
file:C:\testproduct2\repository
-artifactRepository
file:C:\testproduct2\repository -installIU
com.nokia.carbide.cpp.product
-destination C:\testproduct2\eclipse -profile
PlatformProfile
-profileProperties org.eclipse.update.install.features=true
-bundlepool
C:\testproduct2\eclipse -p2.os win32 -p2.ws win32 -p2.arch x86
-roaming
-vmargs
-Declipse.p2.data.area=C:\testproduct2\eclipse\p2
where
C:\testproduct2\eclipse is where I exported the product to,
and
C:\testproduct2\repository is what PDE generated for the
product.
Thanks,
Warren
------------
Date: Fri, 30 May
2008 16:20:35 -0400
From: Andrew Niefer
<aniefer@xxxxxxxxxx>
Subject: Re: [equinox-dev] Need help building a
product with p2
To: Equinox development mailing list
<equinox-dev@xxxxxxxxxxx>
Message-ID:
<OFA0E574FE.7D42A298-ON85257459.00539CEC-85257459.006FBEE4@xxxxxxxxxx>
Content-Type:
text/plain; charset="us-ascii"
Warren,
1) This is what I notice
when I tried running your director command on a
product I exported:
-
the "-metadataRepository" and "-artifactRepository" values need to
be
URLs: use "file:C:\testproduct\repository"
- I found I needed to
specify -installIU to get anything out. In this
case the IU is the
product ID
- althrough not strictly necessary since the generated config.ini
will
specify its location, you might want to put the p2.data.area in the
same
folder as -destination.
My test product does not contain p2
bundles so I have not tried the
Software
updates.
<Warren.Paul@xxxxxxxxx>
Sent by:
equinox-dev-bounces@xxxxxxxxxxx
05/29/2008 08:25 PM
Please respond
to
Equinox development mailing list
<equinox-dev@xxxxxxxxxxx>
To
<equinox-dev@xxxxxxxxxxx>
cc
Subject
[equinox-dev]
Need help building a product with p2
I've received
some help from Andrew in this Bugzilla
(
https://bugs.eclipse.org/bugs/show_bug.cgi?id=226614) but I'm
still
having problems so I thought I'd take it to the list rather than in
that
Bugzilla.
We've been shipping an IDE product based on Eclipse for a
few years now.
The way we've built our product in the past is essentially
this:
1) Download the platform runtime, EMF, GEF, etc.. from eclipse.org
and
extract them into a product layout directory.
2) Checkout and tag our
features and plugins
3) Use headless feature build on all of our features,
and extract the
generated archives into the product layout directory.
4)
Copy our modified version of config.ini, .eclipseproduct, etc. into
the
product layout directory.
5) Generate an update site based on the generated
features/plugins.
This gives us a full product layout for new installs, and
allows users
with older installs of our product to update to the new version
using
the update site.
This process broke when we moved to Eclipse 3.4M6
when p2 was
introduced.
I've come to discover that we weren't really
building it in the ideal
fashion to begin with, so I'm trying to do it the
proper way so we can
get a properly p2-ized product layout and update
site.
Andrew provided several useful links in that Bugzilla. I've read
about
doing product builds, using the p2 meta generator and p2 director.
I've
also played with the examples from EclipseCon
presentation.
Here are some of the problems I'm having:
1) I created a
.product file based on features. I included our features
as well as
those org.eclipse features that we bundle with. When I
export it using
the PDE product export from the UI, it generates a
directory containing
everything we need - all features and plugins (ours
and org.eclipse.*), our
branded launcher and ini file, .eclipseproduct
file,
config.ini file,
jre, etc.. It of course does not contain the p2 data
though. I
told the exporter to generate a metadata repository which it
did. I
think I'm then supposed to run it through the p2 director to get
the
proper p2 directory. I tried this, and it generated something, but
I
get the error "Cannot launch the Update UI. This installation has
not
been configured properly for Software Updates" when I try to go to
Help->Software Updates. I assume I didn't get the command line
correct
for the p2 director. This is what I did:
eclipsec.exe
-nosplash -application
org.eclipse.equinox.p2.director.app.application
-metadataRepository
C:\testproduct\repository\
-artifactRepository
C:\testproduct\repository\ -destination
C:\testproduct\eclipse\ -profile
PlatformProfile
-profileProperties
org.eclipse.update.install.features=true
-bundlepool
C:\testproduct\eclipse -p2.os win32 -p2.ws win32 -p2.arch x86
-roaming
-vmargs -Declipse.p2.data.area=C:\testproduct2\eclipse\p2
Any
idea what I'm doing wrong? I thought I should be passing
-installIU
but wasn't sure what to pass with it. I tried the
product id but it
errored out saying it couldn't find the IU.
2) What
I did in 1) was really just a test because we'll need to build
everything
from the command line and not from the export wizard. I
tried to build
the product from the command line and kept getting an
error that
org.eclipse.rcp could not be found. I removed all
org.eclipse.*
features from our product file and tried again. Now it
builds, and it
generates the repo directory because I added the stuff to
our
build.properties file as
instructed:
generate.p2.metadata=true
p2.metadata.repo =
file:${buildDirectory}/repo p2.artifact.repo =
file:${buildDirectory}/repo
p2.metadata.repo.name = Carbide.c++ Metadata
Repository p2.artifact.repo.name
= Carbide.c++ Artifact Repository
p2.flavor = tooling
p2.publish.artifacts=true This repo directory only
contains the two xml files
though (artifacts.xml and content.xml),
unlike the product export which
generated those as well as binary,
features and plugins directories.
The
other issue is that none of the org.eclipse.* features/plugins are
included.
This is presumably because they're no longer in the .product
file, but
I had to do that to get the build to work. I tried creating
a
master feature which just required all of our features and
the
org.eclipse features, but still got the missing rcp error. Note: in
the
example2 from the EclispeCon zip, it builds a product and does
include
the org.eclipse
stuff in the output. This example is
based on plugins rather than
features. This is the only meaningful
difference I could see in the
.product files.
I'm also confused about the
topLevelElementType and topLevelElementId
attributes in the build.properties
files. I couldn't find any
documentation on these. Ideally I'd
put type=product and id=our product
id, and then I assume the installIU
would be the product id?
Anyway, sorry for the long email, but I'm stuck and
could really use
some help.
Thanks,
Warren
_______________________________________________
equinox-dev mailing
list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
------------------------------
_______________________________________________
equinox-dev
mailing
list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
End
of equinox-dev Digest, Vol 37, Issue
45
*******************************************
_______________________________________________
equinox-dev
mailing
list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev
mailing
list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev
mailing
list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev mailing
list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev