Saturday, May 30, 2009

[New in Eclipse 3.5] Target Platform State view

The new target story in Eclipse 3.5 allows you to have multiple targets in your workspace. With this one really needs a means to see what constitutes the active target definition. For this reason, we now have a new view - Target Platform State (I don't like to call it TPS view :-)). It can be found in Window -> Show View -> Other... -> Plug-in Development -> Target Platform State.

This is how it looks like


Target Platform State view

What is it good for?
The target platform state view displays the bundles selected by the active target definition. And also their version and the location they are getting picked from. Thus, if you are facing an issue such as plug-in dependency not getting resolved as expected or wrong version of the plug-in getting picked up, the target platform state is where you should be looking.

It also displays, for each plug-in, the required plug-ins and the packages it imports and from where.



Required Plug-ins and Imported Packages
The view is a filtered one.



view filtered for org.eclipse.pde.ui

And when the "Show only unresolved plug-ins" menu choice from the view menu is used, the view only those plug-ins are shown whose dependencies can not be resolved. With all dependencies resolved this one should show a blank view. The "Show leaf plug-ins" will show only those plug-ins on whom no other plug-in depends. They are the leaf of the dependency tree.


Target with only Mylyn plug-ins without Eclipse SDK

6 comments:

  1. Cool stuff Ankur. I hope we can spend more time on this view as we expand on the target platform story in Eclipse 3.6 ;)

    ReplyDelete
  2. Nice! Is there a reason that none of the PDE tree views have drag support? I'd like to provide a dependency graph and dragging from the into the GEF digraph view would be really nice. See http://stan4j.com/images/stories/misc/plugin-deps.png for a sample.

    ReplyDelete
  3. Did you try PDE Incubator Dependency Visualization. It uses Zest and quite on the line of what you are thinking of.

    ReplyDelete
  4. Yes, I did. Our dependency view offers an alternative to PDE IDV with:
    - a much better digraph layout
    - horizontal, vertical, narrow layout options
    - double-clicking a node adds outgoing dependencies
    - double-clicking a node while holding the control key adds incoming dependencies
    - node markers +/- indicate whether there are outgoing/incoming dependencies currently not shown
    - edge labels indicate "requires-bundle" and/or "imports-packages"

    I have a companion dependency view for project dependencies and the Eclipse Project Explorer has drag support, it would be really nice to have it for the various PDE views (or at least for the new platform state view).

    ReplyDelete
  5. That's great! We can then expect a contribution soon ;-) This will help make new Target Platform story jazzier.

    Disclaimer: I haven't tried and do not endorse the above stan4j advertisement :-)

    ReplyDelete
  6. We'll make it available for free - as soon as we can drag bundles from the target platform state view ;-)

    ReplyDelete