Bundle Pooling vs Shared Configuration [message #1710403] |
Tue, 06 October 2015 12:49 |
packydevel packydevel Messages: 3 Registered: October 2015 |
Junior Member |
|
|
Hi guys,
i cannot consider myself an eclipse platform expert but i read many, many times the same paragraph of Eclipse Help about Multi-User Installation and in these days that i have discovered the Eclipse Installer by Oomph, i feel a little confused about the two concepts: shared configuration and bundle pooling.
I know that the Eclipse Installer has the ability to customize eclipse installations but in this topic i would concentrate about the main feature that is the ability to create an eclipse installation using bundle pooling.
It's clear that bundle pooling offers the possibility to share plugins among different eclipse installation avoid redownloading plugins ecc... but is not this the same that i can achieve using Shared Configuration?
Until today i used configure Eclipse making installation folder read-only (as root on linux) and installing there all the plugins that i thought maybe useful to all configurations (git, svn, cvs, terminal, eclipse color theme etc...). In addition i launched eclipse with -configuration option that give me the ability to use all plugins that i have in my shared configuration/shared installation and i have also the ability to install other plugins locally in the configuration-area.
In the end if i needed to develop in python and java i would have had 2 configurations with pydev plugin in the first one and jdt in the second one.
Why the Eclipse Installer with bundle pooling is better than shared configuration?
Why should i change my workflow?
Pascal in this post, https://www.eclipse.org/forums/index.php/m/901915/?srch=bundle+pool says that the bundle pooling and shared configuration can be mixed but i did'n understand how and what kind of advantages i woud have?
Thank you very much, in advance ...
|
|
|
Re: Bundle Pooling vs Shared Configuration [message #1710436 is a reply to message #1710403] |
Tue, 06 October 2015 15:31 |
|
Am 06.10.2015 um 17:02 schrieb packydevel packydevel:
> Hi guys,
>
> i cannot consider myself an eclipse platform expert but i read many, many times the same paragraph of Eclipse Help
> about Multi-User Installation and in these days that i have discovered the Eclipse Installer by Oomph, i feel a little
> confused about the two concepts: shared configuration and bundle pooling.
>
> I know that the Eclipse Installer has the ability to customize eclipse installations but in this topic i would
> concentrate about the main feature that is the ability to create an eclipse installation using bundle pooling.
>
> It's clear that bundle pooling offers the possibility to share plugins among different eclipse installation avoid
> redownloading plugins ecc... but is not this the same that i can achieve using Shared Configuration?
No, it's quite different. I'm not a total expert with shared configurations, but I think the main difference is that a
"shared installation/configuration" shares *state* between different users of (almost) the same installation and a
"shared bundle pool" shares *code* across totally different installations.
A shared installation (together with an associated user configuration location) creates kind of a parent/child relation
ship. A shared bundle pool just moves the big features/ and plugins/ folders out of the installation to make their
contents reusable. The p2 profile of an installation then just picks IUs out of that pool to provide the actual code to
run that installation.
>
> Until today i used configure Eclipse making installation folder read-only (as root on linux) and installing there all
> the plugins that i thought maybe useful to all configurations (git, svn, cvs, terminal, eclipse color theme etc...).
> In addition i launched eclipse with -configuration option that give me the ability to use all plugins that i have in
> my shared configuration/shared installation and i have also the ability to install other plugins locally in the
> configuration-area.
> In the end if i needed to develop in python and java i would have had 2 configurations with pydev plugin in the first
> one and jdt in the second one.
>
> Why the Eclipse Installer with bundle pooling is better than shared configuration?
I can't say whether it's always better or not. Eclipse supports both mechansims to support a range of use cases. The
Eclipse Installer (optionally) supports shared bundle pools because that's the mechsnism that seems adequate for single
users with potentially more than one installation.
>
> Why should i change my workflow?
Nobody says "you should". If you understand the two different mechansims (see above) it's up to you to decide which one
better suits your needs.
>
> Pascal in this post, https://www.eclipse.org/forums/index.php/m/901915/?srch=bundle+pool says that the bundle pooling
> and shared configuration can be mixed but i did'n understand how and what kind of advantages i woud have?
It is possible in general but the Eclipse Installer does currently not support the creation of shared installations. The
latter may be incorrect because I have not much experience with shared installs. Maybe it is possible by making the
install folder read-only or some other manual post-install steps.
>
> Thank you very much, in advance ...
I hope it helped ;-)
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Bundle Pooling vs Shared Configuration [message #1710516 is a reply to message #1710436] |
Wed, 07 October 2015 09:38 |
packydevel packydevel Messages: 3 Registered: October 2015 |
Junior Member |
|
|
Hi Eike, thank you for you reply.
About your consideration:
Quote:
No, it's quite different. I'm not a total expert with shared configurations, but I think the main difference is that a
"shared installation/configuration" shares *state* between different users of (almost) the same installation and a
"shared bundle pool" shares *code* across totally different installations.
Really, i'm not sure what you intend about *state* but you consider that i've showed a simple scenario where the local configuration-areas are language based. In other words i have figured out a typical scenario in which i'm almost the only one user of my pc so i created only 2 configuration-areas based on the languages that i use but in case my pc was used by many users, nothing can block users to create private configuration areas one per user or more than one per user. In that scenario there is no *state* sharing between users.
Quote:
A shared installation (together with an associated user configuration location) creates kind of a parent/child relation
ship. A shared bundle pool just moves the big features/ and plugins/ folders out of the installation to make their
contents reusable. The p2 profile of an installation then just picks IUs out of that pool to provide the actual code to
run that installation.
Yes, you're right there, what you described is the relationship between shared and local configuration area but the reusability of plugins in bundle pooling is guaranteed also in sharing configuration because the common plugins are in the p2 repository of that shared configuration that is joined with the one in the local configuration.
Quote:
Nobody says "you should". If you understand the two different mechansims (see above) it's up to you to decide which one
better suits your needs.
Yes, you're right, i'm not forced to change but at the same time i don't understand why equinox introduced this feature when there is, since many years, the sharing configuration solution. I'd like to know if this is a deprecated solution or if it has some drawbacks that i'm not able to find out.
Really i don't understand because i should have many different eclipse installations with the only scope to have different profiles who give the ability to keep trace and load only the plugins that i want in that installation. If i had only one installation i could have the plugin i want simply using the '-configuration' switch when launching eclipse. In that way i implicitly create my own private p2 repository with plugins that i need in that configuration and that i never would share with other configurations and if i discovered that some plugins need to be shared i would move it to shared configuration.
In other terms, in one case i have to produce a different installation and when launching eclipse in that installation i have to install the plugins i want doesn't matter if they are already downloaded or not; it's up to p2 take care of that problem. Remains the fact that i have to install in each eclipse installation all the plugins i need even those that i need to have in every installations for example git, svn, checkstyle etc...
In the other case having the shared plugins in the p2 repository in the shared configuration area i simply launch eclipse with '-configuration' switch and i have to install only the plugins that i don't have; all the others are already loaded by having the shared configuration.
Thank you ...
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.04006 seconds