Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Plugin Development Environment (PDE) » How Eclipse's official packages are built and my packaging problem
How Eclipse's official packages are built and my packaging problem [message #606452] Wed, 11 August 2010 00:40 Go to next message
nc is currently offline ncFriend
Messages: 4
Registered: August 2010
Junior Member
http://www.eclipse.org/downloads/

Can someone explain how these packages from the official Eclipse download site are built? I think they are built with PDE as described in this page.

http://wiki.eclipse.org/Building

I am working on a project based on the CDT features/plugins and some other third party plugins (let's say EGit plugins).
I am using Eclipse 3.5.2.

Assume the feature and plugin I developed are called
com.foo.feature
com.foo.core

com.foo.feature has com.foo.core included in the "Plugins and Fragments".

com.foo.core has a foo.product file, which uses org.eclipse.ui.ide.workbench as the application.

com.foo.core plugin has a couple of CDT plugins in the Dependencies list.

I also have set up a update site for users to do update the com.foo feature/plugins.

My goal is to provide a distribution with
Eclipse platform
CDT features/plugins
EGit features/plugins
com.foo features/plugins

Approach 1:
1).Download the CDT version of Eclipse (called "Eclipse IDE for C/C++ Developers").
2).I ran it. From the "Install New Software", I installed the EGit from EGit's update site and installed com.foo feature/plugins from my own update site.

Then I package this one as a distribution version. In this way, I got the p2 information initialized correctly for EGit and com.foo. The problem is this version has my identity under configure folder and p2 folder because I ran it and did some installation.

I know this is definitely not a right way to do the distribution.

Approach 2:
I installed CDT and EGit to my RCP version of Eclipse.

I configured foo.product to be a plugins based product. I added all the CDT plugins and Egit plugins and other required plugins into the dependencies list in the product. Some of those required plugins are standalone plugins that don't belong to any features such as org.apache.commons.*.jar, and com.jcraft.jsch.*.jar.

The Product Export succeeded. And I can run the eclipse with my branding.

The problem with this approach is all the plugins under some features are just treated as individual plugins. In the About, you cannot see features listed. I also suspect the update for CDT/Egit from a update site are broken.

One more thing worth mentioning is both RCP and CDT installed a version of org.apache.commons.codec. In the dependencies list in the product, without giving a version, the export failed.

Approach 3:
I configured foo.product to a feature based product. I added all the CDT/Egit features and other required features to the Dependencies list. As mentioned above, since some plugins are standalone plugins not belonging to any features. There is no way to add those plugins to the product.

I read some other people's solutions such as this one

http://manuelselva.wordpress.com/2010/07/07/plugin-product-v s-feature-product/

We can have the com.foo.feature to include all the standalone plugins in the dependencies list.

I really don't want to have my com.foo.feature to be messed up with a bunch of plugins not created by me. I want it to include only plugins under the com.foo namespace.

So my questions are:
1.How can I bundle Eclipse platform, CDT, Egit and my feature/plugins together as a distribution with all the p2 data initialized correctly?

2.I plan to use PDE build to automate the build using ant script. I really want to know how the official eclipse packages were built. How the core platform, CDT features/plugins, and standalone pugins are bundled together?
The question can be more general: Assume we have features/plugins from different vendors. How can I bundle them together to create a distribution version with all the p2 initialized correctly?


Thanks so much for your advice.
Re: How Eclipse's official packages are built and my packaging problem [message #606456 is a reply to message #606452] Wed, 11 August 2010 18:06 Go to previous message
nc is currently offline ncFriend
Messages: 4
Registered: August 2010
Junior Member
I think I found part of the answer. At least I need to inlucde
features org.eclipse.equinox.p2.user.ui and org.eclipse.rcp into my product. They automatically include all the plugins I need.

I am also using the delta pack to build for all platforms.
CDT doesn't have a delta pack. So I added the cdt.core plugin's win32/linux/mac versions to the target platform.
Previous Topic:How Eclipse's official packages are built and my packaging problem
Next Topic:p2.inf
Goto Forum:
  


Current Time: Thu Apr 25 20:46:36 GMT 2024

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

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

Back to the top