Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse Platform » How to explore feature contents?(How to see and search features by the plug-ins they contain?)
How to explore feature contents? [message #656128] Thu, 24 February 2011 10:08 Go to next message
Mikhail Kalkov is currently offline Mikhail Kalkov
Messages: 13
Registered: February 2011
Junior Member
Hi all,

(1) Is there a way to see what plug-ins comprise a feature before installing it? (2) I am also wondering if there is a way to get a list of features that include a particular plug-in.

A use case for the first question is as follows: I have an installation of Eclipse Classic 3.6.1 with Eclipse SDK feature, and wonder what is there in the Eclipse Platform SDK feature. How can I know what comes with it short of installing everything? I am still puzzled and asked this question in a separate thread.

A use case for the second question is from real life as well. I want to know what feature I have to install in order to get a junit4 runtime plug-in. After extensive googling and experimenting I figured out that in Eclipse 3.5 I have to install Java Development Tools, but in Eclipse 3.6 it is enough to install "PDE JUnit Runner Support - Add-on" feature from the "EclipseRT Target Platform Components" category.

Regards,
Mikhail

[Updated on: Thu, 24 February 2011 15:20]

Report message to a moderator

Re: How to explore feature contents? [message #656183 is a reply to message #656128] Thu, 24 February 2011 13:26 Go to previous messageGo to next message
Paul Webster is currently offline Paul Webster
Messages: 6859
Registered: July 2009
Location: Ottawa
Senior Member

It's not easy to find out before hand. Once it's installed, you can
inspect the feature.xml files.

However, you can run p2 queries that can 1) find out the full dependency
tree from a feature and 2) for a plugin, find out what feature(s)
contain it.

See http://dev.eclipse.org/mhonarc/lists/p2-dev/msg03885.html for #1 and
http://dev.eclipse.org/mhonarc/lists/p2-dev/msg03894.html for #2

Remember, in the p2 world, a feature org.eclipse.rcp == and IU of
org.eclipse.rcp.feature.group. Plugin IDs make 1 to 1.

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: How to explore feature contents? [message #656214 is a reply to message #656183] Thu, 24 February 2011 15:18 Go to previous messageGo to next message
Mikhail Kalkov is currently offline Mikhail Kalkov
Messages: 13
Registered: February 2011
Junior Member
Thanks for a clear answer, Paul! I guess constructing p2 queries is a an overkill for me right now, but it is nice to know that I haven't missed any easier methods, and bookmark your answer for the future, when I get down to study osgi console more closely.
Re: How to explore feature contents? [message #1086662 is a reply to message #656214] Wed, 14 August 2013 14:17 Go to previous message
Mikhail Kalkov is currently offline Mikhail Kalkov
Messages: 13
Registered: February 2011
Junior Member
Just in case anybody stumbles upon this thread, here is how to answer the original question. First, we need to prepare the OSGi Console.
1. Start Eclipse and make sure that eventual proxy settings are properly configured (Window > Preferences > General > Network Connections).
2. Open Eclipse Console View and start a new Host OSGi Console
3. In the console type "start org.eclipse.equinox.p2.console"

Now, you can for example, run the following command to look up org.eclipse.m2e.sdk.feature in http://download.eclipse.org/technology/m2e/releases p2 repo and find all p2 installable units (IUs), which it includes (requires):
provlquery http://download.eclipse.org/technology/m2e/releases "select(latest(x|x.id=='org.eclipse.m2e.sdk.feature.feature.group').first(y|true), _, {par, iu | par.requirements.exists(rc|iu~=rc)})" true

If you want to answer the opposite question, and get the list of IUs, which require a given feature or plugin, you only need to replace par.requirements.exists(rc|iu~=rc) with iu.requirements.exists(rc|par~=rc).

The second best description of p2 query language after the source code itself, is available here: http://wiki.eclipse.org/Query_Language_for_p2
Previous Topic:TableViewer refresh not preserved sorting
Next Topic:[TreeViewer] How to bring a not yet visible object in view
Goto Forum:
  


Current Time: Thu Oct 30 13:14:17 GMT 2014

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

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