RCP获取当前插件项目路径

  今天需要获取插件项目下与src文件夹同级的文件夹report/template下的文件作为模版在程序中使用,我觉得这是一个常见的问题,应该有简单成熟的方法。于是在网上边搜边试,弄了半天都不行,搞的我烦死了。最后终于碰运气正常地运行了,于是记录下来,也别管脱离了eclipse IDE后运行会怎样,更别谈eclipse令人头痛的各种路径管理,现在我只要说明方法:

1  Platform.getBundle(PLUGIN_ID).getLocation().replace("initial@reference:file:", "") + "report/template";

  需要说明的是,PLUGIN_ID为具体插件的名称,getLocation()得到的路径类似:

initial@reference:file: ../../PLUGIN_NAME

  那么initial@reference:file: 截掉,后面的路径便是当前插件项目所在路径了。这里因为我的eclipse安装在 C:/eclipse/eclipse3.7 目录下,而项目则存放在 C:/ 下,因此这个所得路径是eclipse安装目录的相对路径。对于那些喜欢将插件项目放在 eclipse/plugins 目录下的,getLocation()得到的自然是漂亮的 plugins/PLUGIN_NAME。
参考:http://blog.csdn.net/nononojkl/article/details/7597575

posted @ 2012-10-12 17:09  hergland  阅读(789)  评论(0编辑  收藏  举报