Nutch插件加载流程
2013-09-01 14:13
344 查看
首先介绍一下Nutch插件使用到的几个类:
1.PluginRepository:存储了PluginDescriptor,Extension,ExtensionPoint
2.PluginDescriptor:描述插件的元数据,从plugin.xml处获得
3.Plugin:插件的一个抽象
4.ExtensionPoint:扩展点,nutch有15个扩展点,所有插件都集中在nutch-extensionpoints中,它本身也是个插件
5.extension:对扩展点的实现,一个插件点可以有多个实现
6.PluginManifestParse:解析plugin.xml,生成对应PluginDescriptor
7.PluginClassLoader:根据urls动态生成相应的插件实现对象
具体讲解几个类:(1)一个ExtensionPoint 包含多个Extension,Extention是对Extensionpoint的实现。(2)PluginManifestParser负责对插件目录列表中的每个插件描述文件plugin.xml进行解析,然后将结果保存在PluginDescriptor中。(3)可以理解为PluginDescriptor时plugin.xml的java描述。
整个插件系统的加载过程是:
1.初始化PluginRespository,读取各种配置文件,主要来自nutch-site.xml,nutch-default.xml
2.得到PluginManifestParser,对所有插件文件进行遍历,然后对每一个plugin.xml生成一个对应的PluginDexcriptor,最后得到一个List,存放所有对象
3.根据配置文件,过滤掉一些插件
4.插件依赖关系检查,调用getDependencyCheckedPlugins(),将所有依赖的插件加入到集合中
5.安装插件
更详细的介绍请看: http://blog.csdn.net/amuseme_lu/article/details/6786261
1.PluginRepository:存储了PluginDescriptor,Extension,ExtensionPoint
2.PluginDescriptor:描述插件的元数据,从plugin.xml处获得
3.Plugin:插件的一个抽象
4.ExtensionPoint:扩展点,nutch有15个扩展点,所有插件都集中在nutch-extensionpoints中,它本身也是个插件
5.extension:对扩展点的实现,一个插件点可以有多个实现
6.PluginManifestParse:解析plugin.xml,生成对应PluginDescriptor
7.PluginClassLoader:根据urls动态生成相应的插件实现对象
具体讲解几个类:(1)一个ExtensionPoint 包含多个Extension,Extention是对Extensionpoint的实现。(2)PluginManifestParser负责对插件目录列表中的每个插件描述文件plugin.xml进行解析,然后将结果保存在PluginDescriptor中。(3)可以理解为PluginDescriptor时plugin.xml的java描述。
整个插件系统的加载过程是:
1.初始化PluginRespository,读取各种配置文件,主要来自nutch-site.xml,nutch-default.xml
2.得到PluginManifestParser,对所有插件文件进行遍历,然后对每一个plugin.xml生成一个对应的PluginDexcriptor,最后得到一个List,存放所有对象
3.根据配置文件,过滤掉一些插件
4.插件依赖关系检查,调用getDependencyCheckedPlugins(),将所有依赖的插件加入到集合中
5.安装插件
更详细的介绍请看: http://blog.csdn.net/amuseme_lu/article/details/6786261
相关文章推荐
- nutch插件加载机制
- nutch插件加载机制
- 浏览器研究(二):加载插件的一般流程
- nutch系统是如何加载和管理URLFilter插件的
- Nutch插件加载分析
- kettle插件加载流程
- PluginRepository负责加载nutch系统下的插件,可以通过installExtensionPoints()函数查看要加载的插件和对应路径
- Nutch插件加载分析
- sdio wifi驱动的加载流程
- Android插件技术(一) JVM 类加载机制
- 发布qt程序时加载qt自带插件问题
- 基于jquery的图片懒加载:LazyLoad插件参数详解
- CodeIgniter(CI)框架加载流程及结构分析
- Android中so使用知识和问题总结以及插件开发过程中加载so的方案解析
- 解决Eclipse因为插件加载失败而无法启动的问题
- Android N Launcher3到启动和加载流程
- Lazy Load, 延迟加载图片的 jQuery 插件
- USB设备驱动程序加载流程
- 【requireJS源码学习03】细究requireJS的加载流程
- spring IOC加载流程