NetBeans与Eclipse处理扩展点及扩展的方式是不同的。让我们看看这些不同之处。请注意,本文仅针对那些对这两个平台的插件机制都具备相当知识的人。
NetBeans Platform:
定义扩展点 | 创建一个接口,并将它置入一个公共模块包中。 |
创建扩展 | 创建上述接口的实现,并通过layer.xml文件将它注册到虚拟文件系统中。 |
读取可用的扩展 | 使用org.openide.util.Lookup类去获取上述接口实现的实例。 |
Eclipse RCP:
定义扩展点 | 创建一个扩展点的描述符方案,该方案定义了扩展点的元素与属性,以及这些元素之间的关系。 可用的属性类型为:boolean,string,java,resource和identifer。可向该方案的任何部分添加文档。 最后,向plugin.xml文件 注册你的扩展点。 |
创建扩展 | 根据上述方案,在plugin.xml文件中创建一个子部分,在此处向属性赋予值。如果属性类型为java,则也要创建被引用的Java类。 |
读取可用的扩展 | 使用org.eclipse.core.runtime.IExtensionPoint获取扩展的列表。从每个扩展中获取IConfigurationElement的列表: 每个IConfigurationElement对应于plugin.xml文件中的一个XML标签。 |
NetBeans平台 | Eclipse RCP | ||
优点 | 缺点 | 优点 | 缺点 |
非常简单,易于学习 | 扩展点没有定义它自己:没有关于是哪个公共模块接口作为扩展点使用的信息。 | 扩展点清晰地定义了它自己:快速查看jar文件,你就能立即知道该插件提供了哪些扩展点,以及它们是由哪些元素组成的。 | 比较复杂,需要更多时间去学习 |
使用的查找名也未作定义 | 有许多属性类型:可以在XML文件中描述特定的结果。 | ||
扩展和其它的内容都混写在layer.xml文件中:难以确定该模块用于哪些扩展。 | 可生成扩展的多数组成部分,见PDE。 | ||
定义好了文档的位置。 |
版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明!