Eclipse通过plug-in.xml以及menifest.mf来配置plug-in之间的关系。那么,代码中怎么取得plug-in.xml或者menifest.mf这样的配置文件中的信息呢?
可以通过interface IConfigurationElement这样的接口,让代码获得配置文件中的相关信息。以下是
interface IConfigurationElement的定义:
* A configuration element, with its attributes and children,
* directly reflects the content and structure of the extension section
* within the declaring plug-in's manifest (<code>plugin.xml</code>) file.
如果程序想要得到配置文件中的信息,应该实现接口IExecutableExtension,以便使用函数(接口定义)
public void setInitializationData(IConfigurationElement member, String propertyName, Object data)
通过该函数的IConfigurationElement变量,可以取得相应的信息:
String s = member.getAttribute(FACTOR_ATTRIBUTE); // FACTOR_ATTRUBUTE是private string, 代表相应的attribute名字
如果某个plug-in不需要使用配置文件中的信息(这里的FACTOR_ATTRIBUTE),那就不需要重新实现上面这个函数。这也是例子com.bolour.sample.eclipse.service.multiplication_1.0.0和com.bolour.sample.eclipse.service.echo_1.0.0的区别。