为了更好的实现动态加载/卸载插件,Eclipse从3.0开始实现OSGI规范,原先在plugin.xml文件里定义的很多内容都被推荐放在manifest.mf文件里,只有<extension>和<extension-point>是例外。下面是两种文件格式中各元素的对照表:
|
|
<plugin id=> |
Bundle-SymbolicName |
<plugin version=> |
Bundle-Version |
<plugin name=> |
Bundle-Name |
<plugin provider=> |
Bundle-Vendor |
<plugin class=> |
Bundle-Activator |
<fragment plugin-id=> |
Fragment-Host |
<fragment plugin-version=> |
Fragment-Host: <id>; bundle-version= |
<requires>, <import> |
Require-Bundle |
<runtime>, <library> |
Bundle-ClassPath |
具体的转换方法在http://dev.eclipse.org/viewcvs/viewvc.cgi/platform-core-home/runtime/adoption.html?view=co可以看到,也就是说,我们在Eclipse 3.0以上版本中开发插件的时候,最好使用manifest.mf文件的方式(实际上Eclipse自带的Plugin Manifest Editor在这方面已经帮我们做了不少工作,新版本的Eclipse在创建新项目时会自动把可以放在manifest.mf文件中的内容转移过去)。
原文地址:http://www.cnblogs.com/bjzhanghao/archive/2005/05/28/164317.html