How To Make A Framework Plugin That Does Not Suck
by Max Andersen on Mar 24, 2010
- 3,389 views
Eclipse plugins that tries to support a specific framework such as Hibernate, JPA, servlets, Struts, Spring, Drools, log4j, etc. all have many of the same challenges but somehow they have a tendency ...
Eclipse plugins that tries to support a specific framework such as Hibernate, JPA, servlets, Struts, Spring, Drools, log4j, etc. all have many of the same challenges but somehow they have a tendency to solve it differently and we end up with a fractured IDE from a usability and architectural perspective.
It seems like everyone understands what functionallity that is specific for their framework, but forget to consider issues like multiple version support, classpath libraries, debugging/launching and coexistence with other 3rd party framework plugins.
After working five years with this in context of JBoss Tools and Eclipse itself I came to realize a lot of this fracture is caused by either not using already existing functionallity available in Eclipse API's or simply not realizing how little effort it actually takes to handle these common issues.
This talk will outline the identified issues and present patterns and in some cases implementation for how framework plugins should be done so they work well within the majority of the Eclipse Java ecosystem.
Accessibility
Categories
Upload Details
Uploaded via SlideShare as Apple Keynote
Usage Rights
© All Rights Reserved
Statistics
- Likes
- 1
- Downloads
- 62
- Comments
- 1
- Embed Views
- Views on SlideShare
- 3,322
- Total Views
- 3,389
1–1 of 1 previous next
Class Path containers
New Java Class Wizard, New Servlet, New JPA Mapping
.java, web.ml, .drl, hbm.xml
open-on, find references, open type/resources
compile/validate requires full domain knowledge
refactoring if you are really good
CVS plugin and SVN plugin team provider plugins; again for using - not for developers to use.
GEF, a plugin to build other plugins with - relies on pure Java plugin for its framework “features”
Upgrades to plugin magically updates users libraries
Only One Runtime
Upgrades to plugin magically updates users libraries
Only One Runtime
Upgrades to plugin magically updates users libraries
Only One Runtime