Eclipse的插件机制是个非常好的东西,架构也非常灵活。我们开发的插件有时候需要提供一些扩展机制,允许他人扩展,但是如果是提供的标准的Eclipse扩展点的话无疑加大了开发扩展功能的难度,开发人员必须熟悉Eclipse插件开发才可以。在最近做的几个IDE中,为了避免这个问题,我都采用了最原始的插件扩展方式,也就是扩展功能的开发人员把扩展插件的jar包或者.class文件放到某个目录下即可,这些扩展功能也只需实现某个接口即可,由我的插件来进行加载。这样在扩展功能开发人员看来,写扩展功能就是写一个实现了某个接口的Java类,无需了解Eclipse插件开发的知识了,当然这带来的缺点就是灵活性降低了。