Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Equinox » [p2] Re: any way to have the batch build generate the p2 descriptor files?
[p2] Re: any way to have the batch build generate the p2 descriptor files? [message #108363] Thu, 17 April 2008 19:14 Go to next message
Eclipse UserFriend
Originally posted by: zx.us.ibm.com

This question is better for the Equinox newsgroup.

Francis Upton wrote:
> Sorry for not looking at the code and trying to figure this out myself,
> but I thought maybe someone would have a quick answer.
>
> I use the PDE build scripts and have not changed them for 3.4, I notice
> that in my generated products there is nothing p2 related. The
> generated apps work just fine.
>
> However, I want to actually generate the p2 file that says what's to be
> used, because for one of my products I want to withhold a plugin
> (because that plugin will be in the application's class path in order
> for me to expose it as an API to the application). (I also need to
> figure out a way to tell p2 which of these p2 files to use on startup --
> I'm using EclipseStarter, so I assume there is some property that I can
> set for this).
>
> Can the automated build generate this file somehow? Or is there a
> better way to solve this problem short of creating an entirely separate
> product with it's own copy of everything?
>
> Thanks,
>
> Francis
Re: [p2] Re: any way to have the batch build generate the p2 descriptor files? [message #108413 is a reply to message #108363] Mon, 21 April 2008 10:31 Go to previous messageGo to next message
Francis Upton IV is currently offline Francis Upton IVFriend
Messages: 472
Registered: July 2009
Location: Oakland, CA
Senior Member
Well I figured out how to teach the headless build how to do to this,
and then realized the approach was completely wrong. The bundles.info
file really needs to be generated in-sutu at the first startup because
it actually has the paths to the bundles, so it's not something that can
be done at generation time.

I imagine that I could use some kind of more sophisticated p2
configurator to be able to withhold a bundle given a particular
execution, but I think I will hold off on this for the time being until
p2 gets further along.

In the meantime I will just create a different product (and thus
installation) for the case where I need to have the one plugin withheld.

Unless someone has a better idea.

Francis

Chris Aniszczyk wrote:
> This question is better for the Equinox newsgroup.
>
> Francis Upton wrote:
>> Sorry for not looking at the code and trying to figure this out
>> myself, but I thought maybe someone would have a quick answer.
>>
>> I use the PDE build scripts and have not changed them for 3.4, I
>> notice that in my generated products there is nothing p2 related. The
>> generated apps work just fine.
>>
>> However, I want to actually generate the p2 file that says what's to
>> be used, because for one of my products I want to withhold a plugin
>> (because that plugin will be in the application's class path in order
>> for me to expose it as an API to the application). (I also need to
>> figure out a way to tell p2 which of these p2 files to use on startup
>> -- I'm using EclipseStarter, so I assume there is some property that I
>> can set for this).
>>
>> Can the automated build generate this file somehow? Or is there a
>> better way to solve this problem short of creating an entirely
>> separate product with it's own copy of everything?
>>
>> Thanks,
>>
>> Francis


Re: [p2] Re: any way to have the batch build generate the p2 descriptor files? [message #108439 is a reply to message #108363] Mon, 21 April 2008 17:41 Go to previous message
Andrew Niefer is currently offline Andrew NieferFriend
Messages: 990
Registered: July 2009
Senior Member
The current pde.build integration with p2 works as follows:

1) Make sure the p2.metadata.generator bundle & its dependencies exist in the build.
2) Set the property "generate.p2.metadata=true"
3) Set the following properties as appropriate:
p2.metadata.repo = file:${buildDirectory}/repo
p2.artifact.repo = file:${buildDirectory}/repo
p2.flavor = tooling
p2.publish.artifacts = true
and if you are not using a .product file:
p2.root.name
p2.root.version

The expected result of this is a p2 repo from which you can then install your stuff.

The build does not generate the bundle.info file that lists what plugins are to
be used. That is generated as part of the install operation. I don't know if
there is any way to switch between 2 such files other than perhaps having 2
different config directories in your product.

-Andrew

Chris Aniszczyk wrote:
> This question is better for the Equinox newsgroup.
>
> Francis Upton wrote:
>> Sorry for not looking at the code and trying to figure this out
>> myself, but I thought maybe someone would have a quick answer.
>>
>> I use the PDE build scripts and have not changed them for 3.4, I
>> notice that in my generated products there is nothing p2 related. The
>> generated apps work just fine.
>>
>> However, I want to actually generate the p2 file that says what's to
>> be used, because for one of my products I want to withhold a plugin
>> (because that plugin will be in the application's class path in order
>> for me to expose it as an API to the application). (I also need to
>> figure out a way to tell p2 which of these p2 files to use on startup
>> -- I'm using EclipseStarter, so I assume there is some property that I
>> can set for this).
>>
>> Can the automated build generate this file somehow? Or is there a
>> better way to solve this problem short of creating an entirely
>> separate product with it's own copy of everything?
>>
>> Thanks,
>>
>> Francis
Previous Topic:P2 profile creation problem
Next Topic:P2: "No repository found at..." for local eclipse installation
Goto Forum:
  


Current Time: Thu Apr 25 18:56:26 GMT 2024

Powered by FUDForum. Page generated in 0.02942 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top