Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Rich Client Platform (RCP) » Simple configurator and dropins
Simple configurator and dropins [message #640846] Tue, 23 November 2010 05:44 Go to next message
Daniel Krügler is currently offline Daniel Krügler
Messages: 853
Registered: July 2009
Senior Member
Since ages we use the Eclipse headless build to produce two different
"products":

1) A normal product-based built which produces a complete RCP
application with branding

2) A second feature-based built that produces a set of plugins and a feature

First, I don't understand, why in the output of (1) the plugins are
properly deployed as jars, if the unpack attribute of the plugin element
is missing or specified as unpack="false" and the plugin is based on a
"dot" library instead of a library, and properly deployed as unpacked
form, if the plugin is based on a named library, but in (2) the output
form of plugins is always unpacked, independent on the
unpack="false" or whether a pure "dot" library is used.

Is their some special tag value to set in the head-less build for the
second form to realize that pure "dot"-classpath/library plugins are
produced as jars in the end?

Second, and this is much more relevant for me: In Eclipse 3.0 and before
p2 was completed, plugins/features could simply be added to another RCP
application and they were (probably after a -clean start) properly
recognized. We took advantage of this, because we could just add the
result of build (2) to the complete RCP-product (1) for those customers
that want to have this special feature set. As documented, this does no
longer work for a simpleconfigurator, because *only* plugins mentioned
in the bundle.info file would be considered for activation. But
according to my understanding plugins could still be added afterwards by
adding them to a dropins folder parallel to the plugins/features folders
in the RCP application. Attempting to do that failed, though. The
plugins added to this folder were not recognized. After Internet search
I have read that the property

org.eclipse.update.reconcile=false

should be added to the config.ini (Eclipse does the same), but this
addition does also have no effect.

In our product-based build we use "generate a default config.ini file" -
it would be nice to keep that. If not, I would be glad to hear what
needs to be added to make the automagically recognition of new plugins
work. There must currently be something missing to get the
dropins-folder approach work.

I would appreciate any suggestions/ideas.

Thanks & Greetings from Bremen,

Daniel Krügler
Re: Simple configurator and dropins [message #640888 is a reply to message #640846] Tue, 23 November 2010 08:08 Go to previous messageGo to next message
Paul Webster is currently offline Paul Webster
Messages: 6859
Registered: July 2009
Location: Ottawa
Senior Member

Daniel Krügler wrote:
> As documented, this does no
> longer work for a simpleconfigurator, because *only* plugins mentioned
> in the bundle.info file would be considered for activation. But
> according to my understanding plugins could still be added afterwards by
> adding them to a dropins folder parallel to the plugins/features folders
> in the RCP application. Attempting to do that failed, though.

If you want to pre-package the features with the product for certain
customers and your product is already p2 enabled, why not simply use the
director?

http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse. platform.doc.isv/guide/p2_director.html

example:

builder-eclipse-dir/eclipse \
-application org.eclipse.equinox.p2.director \
-noSplash \
-repository file:/path/to/feature/build/repo \
-destination /path/to/RCPproductWithFeatures \
-profile SDKProfile \
-installIU org.eclipse.releng.tools.feature.group

You have to figure out the correct profile, which you could find in your
RCPapp/p2/org.eclipse.equinox.p2.engine/profileRegistry directory. Then
zip up the RCPapp+Features as well.

> In our product-based build we use "generate a default config.ini file" -
> it would be nice to keep that. If not, I would be glad to hear what
> needs to be added to make the automagically recognition of new plugins
> work. There must currently be something missing to get the
> dropins-folder approach work.

If your product is configured for p2, the you need to include and start
the dropins reconconciler bundle. I've seen entries like:
http://dev.eclipse.org/newslists/news.eclipse.technology.equ inox/msg06640.html


Your .product file also has to add it to the configurations section.
You don't usually need to include start levels above 4 (the SDK
doesn't), but here is one conversation example:

http://www.eclipse.org/forums/index.php?t=msg&goto=55618 1&S=45feff384dead745a91d7f66526c6733


--
Paul Webster
http://wiki.eclipse.org/Platform_Command_Framework
http://wiki.eclipse.org/Command_Core_Expressions
http://wiki.eclipse.org/Platform_Expression_Framework
http://wiki.eclipse.org/Menu_Contributions
http://wiki.eclipse.org/Menus_Extension_Mapping
http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse .platform.doc.isv/guide/workbench.htm


Re: Simple configurator and dropins [message #641426 is a reply to message #640888] Thu, 25 November 2010 07:35 Go to previous messageGo to next message
Daniel Krügler is currently offline Daniel Krügler
Messages: 853
Registered: July 2009
Senior Member
On 11/23/2010 14:10, Paul Webster wrote:
> Daniel Krügler wrote:
>> As documented, this does no longer work for a simpleconfigurator,
>> because *only* plugins mentioned in the bundle.info file would be
>> considered for activation. But according to my understanding plugins
>> could still be added afterwards by adding them to a dropins folder
>> parallel to the plugins/features folders in the RCP application.
>> Attempting to do that failed, though.
>
> If you want to pre-package the features with the product for certain
> customers and your product is already p2 enabled, why not simply use the
> director?
>
> http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse. platform.doc.isv/guide/p2_director.html

I'm not sure what "p2 enabled" exactly includes. We don't have and don't
want that users are required to use the "Install New Software..." menu
item, but after some literature search we are not required to publish
the UI-related parts of software updates.

Is there a set of minimum changes that need to be done to a non-p2-
enabled PDE build to a p2.gathering=true build? I have read the
referenced articles and managed it to start the PDE build but still
fail, see below

> example:
>
> builder-eclipse-dir/eclipse \
> -application org.eclipse.equinox.p2.director \
> -noSplash \
> -repository file:/path/to/feature/build/repo \
> -destination /path/to/RCPproductWithFeatures \
> -profile SDKProfile \
> -installIU org.eclipse.releng.tools.feature.group
>
> You have to figure out the correct profile, which you could find in your
> RCPapp/p2/org.eclipse.equinox.p2.engine/profileRegistry directory. Then
> zip up the RCPapp+Features as well.

Thanks, that looks interesting! But first I need to get my PDE build
running again. It currently fails with some p2-related error that I
don't understand.

>> In our product-based build we use "generate a default config.ini file"
>> - it would be nice to keep that. If not, I would be glad to hear what
>> needs to be added to make the automagically recognition of new plugins
>> work. There must currently be something missing to get the
>> dropins-folder approach work.
>
> If your product is configured for p2, the you need to include and start
> the dropins reconconciler bundle. I've seen entries like:
> http://dev.eclipse.org/newslists/news.eclipse.technology.equ inox/msg06640.html

I did so, but failed (see the next paragraph what I tried and the
problems involved).

It would be really nice to know what the minimum magic is that has to be
done to be a good citizen and to use p2. I really *want* to but the lack
of information what is necessary makes me feel that I need to switch
back to the old mechanism if I don't get it running.

> Your .product file also has to add it to the configurations section. You
> don't usually need to include start levels above 4 (the SDK doesn't),
> but here is one conversation example:
>
> http://www.eclipse.org/forums/index.php?t=msg&goto=55618 1&S=45feff384dead745a91d7f66526c6733

Thanks Paul. My first impression when reading this article was that I
just need to:

a) Add org.eclipse.equinox.p2.reconciler.dropins + dependencies to my
feature.

b) Add org.eclipse.equinox.p2.reconciler.dropins to the configuration
part of the product file with auto start activated and default start level.

c) Setting p2.gathering=true in the build.properties file.

With these preconditions satisfied I started the build, but an error
occurred at the part that is logged as "generate.p2.metadata", see
logging at the end

If anyone has an idea what might got wrong here, I would appreciate your
suggestions.

Thanks,

Daniel Krügler

[INFO] [eclipse.idReplacer] Could not find org.eclipse.core.runtime
[INFO] [eclipse.idReplacer] Could not find org.eclipse.equinox.ds
[INFO] [eclipse.idReplacer] Could not find
org.eclipse.equinox.p2.reconciler.dropins
[INFO] [p2.mirror] Problems resolving provisioning plan.
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to org.eclipse.ui.carbon
[4.0.100.M20100825-0800].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to org.eclipse.ui.cocoa
[1.0.2.M20100825-0800].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.win32.win32.x86_64 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.gtk.linux.x86 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.gtk.linux.s390x [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.gtk.linux.s390 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.gtk.solaris.sparc [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.gtk.solaris.x86 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.gtk.linux.ppc [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.gtk.linux.ppc64 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.gtk.linux.x86_64 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.carbon.macosx [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.carbon.macosx [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.cocoa.macosx [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.cocoa.macosx [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.cocoa.macosx.x86_64 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.motif.aix.ppc [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.motif.hpux.ia64_32 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.motif.linux.x86 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.motif.solaris.sparc [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.swt.photon.qnx.x86 [3.6.1.v3655c].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.gtk.solaris.sparc [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.gtk.solaris.x86 [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.carbon.macosx [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.carbon.macosx [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.cocoa.macosx [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.cocoa.macosx [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.cocoa.macosx.x86_64 [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.gtk.linux.ppc [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.gtk.linux.ppc64 [1.0.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.gtk.linux.x86 [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.gtk.linux.s390x [1.1.1.R36x_v20100823].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.gtk.linux.s390 [1.1.1.R36x_v20100823].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.motif.linux.x86 [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.gtk.linux.x86_64 [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.motif.aix.ppc [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.motif.hpux.ia64_32 [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Unable to satisfy dependency from
org.eclipse.rcp.feature.group
3.6.1.r361_v20100827-9OArFLdFjY-ThSQXmKvKz0_T to
org.eclipse.equinox.launcher.win32.win32.x86_64 [1.1.1.R36x_v20100810].
[INFO] [p2.mirror] Messages while mirroring artifact descriptors.
[INFO]
[INFO] assemble.org.eclipse.pde.build.container.feature.win32.win32 .x86:
[INFO]
[INFO] main:
[INFO] [mkdir] Created dir:
D:\data\hudson-build\jobs\XX-Client-2.2\workspace\target\I.x x-client
[INFO]
[INFO] runDirector.condition:
[INFO]
[INFO] runDirector:
[INFO]
[INFO] mirrorProduct:
[INFO]
[INFO] assemble.archive.condition:
[INFO]
[INFO] assemble.archive:
[INFO]
[INFO] cleanup.assembly:
[INFO]
[INFO] postAssemble:
[INFO]
[INFO] package:
[INFO]
[INFO] prePackage:
[INFO]
[INFO] allElements:
[INFO]
[INFO] allElementsDelegator:
[INFO]
[INFO] init:
[INFO]
[INFO] packageElement:
[INFO]
[INFO] main:
[INFO]
[INFO] assemble.org.eclipse.pde.build.container.feature.win32.win32 .x86:
[INFO]
[INFO] main:
[INFO]
[INFO] runDirector:
[INFO]
[INFO] runDirector:
[INFO] [p2.director] Installing de.bdal.xx.client.ui.ide 0.0.0.
[INFO] [p2.director] Installation failed.
[INFO] [p2.director] An error occurred while collecting items to be
installed
[INFO] [p2.director] session context was:(profile=profile,
phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=,
action=).
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.core.net,1.2.100.I20100511-0800
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.ecf,3.1.0.v20100529-0735
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.ecf.filetransfer,4.0.0.v20100529-073 5
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.ecf.identity,3.1.0.v20100529-0735
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.ecf.provider.filetransfer,3.1.0.v201 00529-0735
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.concurrent,1.0.100.v20100503
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.frameworkadmin,2.0.0.v201005 03
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.frameworkadmin.equinox,1.0.2 00.v20100505
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.p2.garbagecollector,1.0.100. v20100503
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.p2.jarprocessor,1.0.200.v201 00503a
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.p2.publisher,1.1.2.v20100824 -2220
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.security,1.0.200.v20100503
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.simpleconfigurator.manipulat or,2.0.0.v20100503
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.sat4j.core,2.2.0.v20100429
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.sat4j.pb,2.2.0.v20100429
[INFO] [p2.director] An error occurred while collecting items to be
installed
[INFO] [p2.director] session context was:(profile=profile,
phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=,
action=).
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.core.net,1.2.100.I20100511-0800
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.ecf,3.1.0.v20100529-0735
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.ecf.filetransfer,4.0.0.v20100529-073 5
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.ecf.identity,3.1.0.v20100529-0735
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.ecf.provider.filetransfer,3.1.0.v201 00529-0735
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.concurrent,1.0.100.v20100503
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.frameworkadmin,2.0.0.v201005 03
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.frameworkadmin.equinox,1.0.2 00.v20100505
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.p2.garbagecollector,1.0.100. v20100503
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.p2.jarprocessor,1.0.200.v201 00503a
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.p2.publisher,1.1.2.v20100824 -2220
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.security,1.0.200.v20100503
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.eclipse.equinox.simpleconfigurator.manipulat or,2.0.0.v20100503
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.sat4j.core,2.2.0.v20100429
[INFO] [p2.director] No repository found containing:
osgi.bundle,org.sat4j.pb,2.2.0.v20100429
[INFO] A problem occured while invoking the director.
[INFO]
[INFO] BUILD FAILED
[INFO]
D:\programs\eclipse-sdks\3.6.1.R36x_v20100823\plugins\org.ec lipse.pde.build_3.6.1.R36x_v20100823\scripts\productBuild\pr oductBuild.xml:45:
The following error occurred while executing this line:
[INFO]
D:\programs\eclipse-sdks\3.6.1.R36x_v20100823\plugins\org.ec lipse.pde.build_3.6.1.R36x_v20100823\scripts\build.xml:129:
The following error occurred while executing this line:
[INFO]
D:\programs\eclipse-sdks\3.6.1.R36x_v20100823\plugins\org.ec lipse.pde.build_3.6.1.R36x_v20100823\templates\headless-buil d\customTargets.xml:12:
The following error occurred while executing this line:
[INFO]
D:\programs\eclipse-sdks\3.6.1.R36x_v20100823\plugins\org.ec lipse.pde.build_3.6.1.R36x_v20100823\scripts\productBuild\al lElements.xml:20:
The following error occurred while executing this line:
[INFO]
D:\programs\eclipse-sdks\3.6.1.R36x_v20100823\plugins\org.ec lipse.pde.build_3.6.1.R36x_v20100823\scripts\genericTargets. xml:193:
The following error occurred while executing this line:
[INFO]
D:\data\hudson-build\jobs\XX-Client-2.2\workspace\target\pac kage.org.eclipse.pde.build.container.feature.all.xml:25:
The following error occurred while executing this line:
[INFO]
D:\data\hudson-build\jobs\XX-Client-2.2\workspace\target\pac kage.org.eclipse.pde.build.container.feature.all.xml:15:
The following error occurred while executing this line:
[INFO]
D:\programs\eclipse-sdks\3.6.1.R36x_v20100823\plugins\org.ec lipse.pde.build_3.6.1.R36x_v20100823\scripts\productBuild\al lElements.xml:54:
The following error occurred while executing this line:
[INFO]
D:\data\hudson-build\jobs\XX-Client-2.2\workspace\target\pac kage.org.eclipse.pde.build.container.feature.win32.win32.x86 .xml:90:
The following error occurred while executing this line:
[INFO]
D:\data\hudson-build\jobs\XX-Client-2.2\workspace\target\pac kage.org.eclipse.pde.build.container.feature.win32.win32.x86 .xml:912:
The following error occurred while executing this line:
[INFO]
D:\programs\eclipse-sdks\3.6.1.R36x_v20100823\plugins\org.ec lipse.pde.build_3.6.1.R36x_v20100823\scripts\genericTargets. xml:237:
A problem occured while invoking the director.
[INFO]
Re: Simple configurator and dropins [message #641433 is a reply to message #641426] Thu, 25 November 2010 08:10 Go to previous messageGo to next message
Paul Webster is currently offline Paul Webster
Messages: 6859
Registered: July 2009
Location: Ottawa
Senior Member

For PDE builds, I recently went through a build exercise:
http://pweclipse.blogspot.com/2010/09/simple-rcp-product-bui ld.html

build.properties: http://pastebin.com/mzGxrvJV
customTargets.xml: http://pastebin.com/5wF60sLG

The idea is to fill up your ${repoBaseLocation} with p2 repos (mirroring
what you need from the 3.6 repo, for example). Then the pde build
scripts will automatically generate a runnable repo at
${transformedRepoLocation}.

The trick is to find out what IUs/features your need available to meet
your product requirements.

When including p2, I found I had to create a runtime feature to contain
the ECF dependencies or they didn't make it into my product:

http://dev.eclipse.org/viewcvs/index.cgi/e4/org.eclipse.e4.r untime/features/org.eclipse.e4.runtime.feature/feature.xml?v iew=co&content-type=text/plain


PW


--
Paul Webster
http://wiki.eclipse.org/Platform_Command_Framework
http://wiki.eclipse.org/Command_Core_Expressions
http://wiki.eclipse.org/Platform_Expression_Framework
http://wiki.eclipse.org/Menu_Contributions
http://wiki.eclipse.org/Menus_Extension_Mapping
http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse .platform.doc.isv/guide/workbench.htm


Re: Simple configurator and dropins [message #641451 is a reply to message #641433] Thu, 25 November 2010 08:34 Go to previous messageGo to next message
Daniel Krügler is currently offline Daniel Krügler
Messages: 853
Registered: July 2009
Senior Member
On 11/25/2010 14:13, Paul Webster wrote:
> For PDE builds, I recently went through a build exercise:
> http://pweclipse.blogspot.com/2010/09/simple-rcp-product-bui ld.html
>
> build.properties: http://pastebin.com/mzGxrvJV
> customTargets.xml: http://pastebin.com/5wF60sLG
>
> The idea is to fill up your ${repoBaseLocation} with p2 repos (mirroring
> what you need from the 3.6 repo, for example). Then the pde build
> scripts will automatically generate a runnable repo at
> ${transformedRepoLocation}.
>
> The trick is to find out what IUs/features your need available to meet
> your product requirements.
>
> When including p2, I found I had to create a runtime feature to contain
> the ECF dependencies or they didn't make it into my product:
>
> http://dev.eclipse.org/viewcvs/index.cgi/e4/org.eclipse.e4.r untime/features/org.eclipse.e4.runtime.feature/feature.xml?v iew=co&content-type=text/plain

Thanks you very much Paul, that will surely be very helpful!

Let me just add some minor questions, because in our build we have no
remote sources and provide all plug-ins/features locally by preparing
the old PDE build directory structure that is based on the
buildDirectory, base, and baseLocation variables. Is it really necessary
to additionally set e.g. repoBaseLocation? I notice that you refer to
some 'repoBase' and 'transformedRepos' variables that also seem new to
me (not part of the default build.properties). I assume, these are not
necessary, if everything is provided locally, right? (Just to add: The
actual plug-in build step did succeed. I only got problems afterwards).
I already used the product variable in our old build, because that is
already a product-based build, so it seems that we are not far away from
you!

According to your description, the step

"For the p2 part of this exercise, just provide a preProcessRepos target"

looks new to me and we didn't do anything like that (it was not
necessary before). Am I correctly understanding, that this override of
the customTargets.xml file is now essentially *required* for a p2-PDE
build and no backward-compatible default is considered?

We don't use ECF, so this is not a current fix we need.

Anyway: Thanks very much for your quick and helpful response!

I hope you enjoy Thanksgiving,

- Daniel Krügler
Re: Simple configurator and dropins [message #641976 is a reply to message #641451] Mon, 29 November 2010 07:36 Go to previous messageGo to next message
Paul Webster is currently offline Paul Webster
Messages: 6859
Registered: July 2009
Location: Ottawa
Senior Member

Daniel Krügler wrote:
>
> Let me just add some minor questions, because in our build we have no
> remote sources and provide all plug-ins/features locally by preparing
> the old PDE build directory structure that is based on the
> buildDirectory, base, and baseLocation variables. Is it really necessary
> to additionally set e.g. repoBaseLocation?

This variable is used when doing builds the new way, instead of the old
baseLocation to specify a target. You don't have to use it. Arguably,
if your product built on 3.4.x and you move it 3.6.x, your product
should still build without changes. Now if you start changing stuff,
that's different :-)

>
> "For the p2 part of this exercise, just provide a preProcessRepos target"
>
> looks new to me and we didn't do anything like that (it was not
> necessary before). Am I correctly understanding, that this override of
> the customTargets.xml file is now essentially *required* for a p2-PDE
> build and no backward-compatible default is considered?

Right, this is an "instead of" step. Instead of using the old
baseLocation, you are downloading p2 repos with what you need (like
http://download.eclipse.org/eclipse/updates/3.6 ) to repoBaseLocation
and then the system is turning them into a "runnable repo" at
transformedRepos, which is the replacement for baseLocation.

AFAIK you can use baseLocation and whatever the extra plugins variable
with the new runnable repos, but if you are changing your builds why not
upgrade them to the new way.

>
> We don't use ECF, so this is not a current fix we need.

If you use p2, you use ECF, and it won't be included in any useful way.
If you don't use p2, then it's not a problem.

I think this has wandered far afield from your original
question/problem, though :-)

Later,
PW


--
Paul Webster
http://wiki.eclipse.org/Platform_Command_Framework
http://wiki.eclipse.org/Command_Core_Expressions
http://wiki.eclipse.org/Platform_Expression_Framework
http://wiki.eclipse.org/Menu_Contributions
http://wiki.eclipse.org/Menus_Extension_Mapping
http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse .platform.doc.isv/guide/workbench.htm


Re: Simple configurator and dropins - SOLVED! [message #642019 is a reply to message #641976] Mon, 29 November 2010 09:56 Go to previous message
Daniel Krügler is currently offline Daniel Krügler
Messages: 853
Registered: July 2009
Senior Member
On 11/29/2010 13:39, Paul Webster wrote:
> Daniel Krügler wrote:
>>
>> Let me just add some minor questions, because in our build we have no
>> remote sources and provide all plug-ins/features locally by preparing
>> the old PDE build directory structure that is based on the
>> buildDirectory, base, and baseLocation variables. Is it really
>> necessary to additionally set e.g. repoBaseLocation?
>
> AFAIK you can use baseLocation and whatever the extra plugins variable
> with the new runnable repos, but if you are changing your builds why not
> upgrade them to the new way.

Thanks, Paul that was helpful.

Having your advice as support to proceed, I just added all further
plugins that have been mentioned in the PDE build error message and
succeeded.

The reason why I needed so long to try this was, because the normal PDE
build did verify all dependencies *before* the build, so when these
where satisfied, the build succeeded as well (unless compile errors in
the to-be-build plugins occurred, of-course). It was a completely new
experience for me to have a dependency-failure *after* a successful
plugin build step. It seems that the p2-build expects further plugins in
the product that are not needed for the normal build.

My special thanks to Paul Webster,

Daniel Krügler
Previous Topic:Debuging org.eclipse.core.expressions.definitions
Next Topic:product definition
Goto Forum:
  


Current Time: Sun Aug 31 00:43:20 EDT 2014

Powered by FUDForum. Page generated in 0.03771 seconds