eclipse插件项目中fragment的简介与使用

5年前


1.1 fragment概念


      fragment是一种特殊的插件,它需要一个host插件。我们通常将fragment看做是寄生插件,需要一个寄主(host project)。在运行时(runtime),fragment工程会被合并(merge)到host工程中,并被当做一个project。因为这种寄生关系,fragment可以访问host插件的所有类和资源。这里要说明的是fragment并不是一个完整的plugin, 而是host plugin功能的扩展。对于一个fragment来说, 它都有一个对应的host plugin, 如果host plugin不安装运行, 那fragment就算装了也不会起作用。


1.2 BPS Platfrom项目中fragment的使用


      这次在BPS Platform 项目中我们主要任务是针对之前发布的版本进行字样的替换,但是此次修改并不能涉及修改源代码。所以我们采取的策略是针对需要修改的项目建立fragment来进行字样的修改。根据所需要修改的国际化资源文件找到它所在的项目,建立一个属于它的fragment项目,如果需要修改的字段在plugin_zh_CN.properties中,那就把plugin_zh_CN.properties复制到在fragment项目中(路径须保持一致),然后将host项目中的plugin_zh_CN.properties改为plugin_zh.properties,把fragment项目中的plugin_zh_CN.properties中需要修改的字段对其做修改,不需要修改的字段全部删除。然后在中文环境下安装,eclipse插件体系会根据系统语言环境会默认先读取plugin_zh_CN.properties文件,其中的内容为我们所修改的字段,接着再读取  plugin_zh.properties文件,其中的内容为原先的所有字段,如果在plugin_zh_CN.properties已经读取的字段,则不再读取,直至资源文件读取完毕,这样就通过fragment插件完成了对资源文件字段的修改。


1.3 使用示例


       以下为更改“生成EOS项目自动构建文件”为“生成BPS项目自动构建文件”的示例。


(1)找到host项目中的国际化资源文件,文件位置在com.primeton.eos.studio.assembly.ui项目中,如图1.1 host项目国际化资源文件所示。

                           

                                                            图1.1 host项目国际化资源文件


(2)新建一个针对host项目的fragment插件项目,Host Plug-in的Plug-in ID选择host项目的id,如图1.2 新建fragment插件项目所示。

                                           

                                                          图1.2 新建fragment插件项目


(3)复制host项目中的plugin_zh_CN.properties至fragment插件项目中,并将host项目中的plugin_zh_CN.properties重命名为plugin_zh.properties,然后修改fragment中的plugin_zh_CN.properties中需要修改的字段,并将不需要修改的字段删除,只保留需要的字段即可。至此fragment项目建立完毕,如图1.3 fragment中的plugin_zh_CN.properties文件内容所示。

                         

                                                  图1.3 fragment中的plugin_zh_CN.properties文件内容


(4)新建com.primeton.eos.studio.feature4bps和com.primeton.eos.studio.updatesite4bps项目,项目中的配置文件从com.primeton.eos.studio.feature和com.primeton.eos.studio.updatesite直接复制。


com.primeton.eos.studio.feature4bps项目负责新增插件的定义,我们需要把我们制作的fragment增加进来,如图1.4 com.primeton.eos.studio.feature4bps配置所示。

                                             

                                                   图1.4 com.primeton.eos.studio.feature4bps配置


        com.primeton.eos.studio.updatesite4bps项目负责将我们定义的新插件打包,我们需要在category.xml和site.xml中添加进来。如图1.5 category.xml和图1.6 site.xml所示。

                       

                                                                  图1.5 category.xml

                       

                                                                   图1.6 site.xml


     添加完成后并保存,至此此次对相关字样的修改结束

COMMENTS

需要 后方可回复
如果没有账号可以 一个帐号。