Export into the Host Eclipse

In the traditional RCP development workflow, you find yourself self-hosting a lot. If you don’t know what self-hosting means, it’s simply the process of launching a new Eclipse instance and executing the bundles you were working on in your workspace. This works well as there’s no real deployment step, but what happens if you want to run what you’re working on inside your current running Eclipse (host)? Well, you could use the classic, “export, copy, paste, delete, restart” technique” but that’s not optimal and takes some time. How do we get around this? Well, in Eclipse 3.5, PDE has new functionality to directly export into your host.  To demonstrate this functionality, let’s create a sample project using the ‘Hello, World Command’ template:

commandtemplate 266x300 Export into the Host Eclipse

Then let’s export into our host using a new option in the export wizard:

export 300x277 Export into the Host Eclipse

Once we export and apply changes, we should see the sample plug-in installed and running (check the toolbar):
host 300x194 Export into the Host Eclipse

To uninstall, simply go to the ‘Installation Details’ page via the About page:

uninstall 240x300 Export into the Host Eclipse

Hope this helps! I also created a video of this workflow in case anyone is interested.

You may also like...

Share this Post

Twitter0
Google+0
LinkedIn
Facebook

Tags

9 Responses to “Export into the Host Eclipse”

  1. ABC says:

    Really circumstantial with this extra export step. Would be nice if Eclipse could support
    applying the change right after accepting the code. If seen something like this in the
    Smalltalk world (changing the IDE or program while it is running). Wouldnt it be possible
    in Java too (with JRebel and friends) ?

  2. Manuel Selva says:

    Nice feature !!!! Thank you PDE and thank you OSGi !!!

    Manu

  3. Peter Friese says:

    Really cool! We’re getting closer to SmallTalk :-P

    BTW, Chris – the screenshots are rather small, at least on the Windows box I need to use currently. Did you resize them?

  4. Peter, are you using IE? The pictures are resized, but when you click on them, you should be taken to the full screenshot :)

  5. Min Idzelis says:

    Since it seems you work closely with PDE, one feature that I think is missing and would be really neat for development/debug would be a way to “re-use” workspaces for PDE launch. Right now, any changes you make to a workspace are saved and persisted. However, it would be nice if someone could give you a zipped up workspace. Then, your debugger would unzip the file to a temp location and use it. This will make it always launch in the same state. It can come in handy for debugging.

  6. ABC says:

    You cant get closer to Smalltalk when you dont know how to spell it correctly: it’s Smalltalk not SmallTalk! ;)
    Anyway a nice feature from the PDE point of view – but still miles away from direct manipulation in dynamic systems. I’m sure there can be a solution to this even in Java …

  7. ekke says:

    thx chris to make this process of deploying into running host much easier then before.
    ekke

  8. This is very nice. I prototyped something like this using my Groovy Monkey plugin. In fact, this kills off one of the main selling points I have for that plugin. Thanks Chris ;)

    Still thanks to OSGi, functionality like this is almost a gimmie. I have one question though, what if you take this cool feature and proceed to shoot yourself in the foot? In other words, you do something incredibly silly and manage to lock up Eclipse? If you can’t get to the P2 UI to remove the bundle you pushed in, you are left with killing the workbench, hacking it out and then restarting with your fingers crossed.

    At least in self-hosting you just kill the self hosted plugin. Also with my prototype, Eclipse doesn’t know about the bundle in its configuration files. So the worst that happens is killing Eclipse and restarting, with the plugin automatically gone. Is there something in this feature to prevent me from hurting myself too much?

    On the other side, dangerous side that is, I can imagine putting a nature on the PDE project where it tries to reload the plugin more dynamically… you know make those old Emacs dudes one less thing to brag about….

9 responses so far

Written by . Published in Categories: Planet Eclipse

Author:
Published:
Apr 23rd, 2009