Bueno existen tres opciones para eso:
La primera es que hagas tu aplicacion en eclipse RCP, buscalo en google hay existen articulos que te ayudaran a tener una mejor idea.
La segunda opcion es hacer tu app con nerbeans rcp, lo mismo que eclipse, yo prefiero netbeans rcp pero ya es cosa de gustos
La tercera es que uses java spi esa es la opcion que uso actualmente es facil de entender y de implementar te dejo un link para q tengas una idea lo malo es que esta en ingles
http://java.sun.com/developer/techni...se/extensible/
salu2