在createExecutableExtension中调用参数化构造函数

时间:2015-10-12 17:52:11

标签: java eclipse eclipse-plugin

我有一个带有参数化构造函数的类(Clock)。我在插件中使用扩展名调用此Clock类。

try {
            for (IConfigurationElement e : config) {
                System.out.println("Harsha Evaluating extension of Clock");
                o = e.createExecutableExtension("class");
            }
        } catch (CoreException ex) {
            System.out.println(ex.getMessage());

        }

方法createExecutableExtenison仅调用Clock类的默认构造函数。如何调用Clock类的参数化构造函数?

提前致谢。

1 个答案:

答案 0 :(得分:1)

createExecutableExtension的Javadoc说:

  

使用其0参数public实例化指定的类   构造

因此您无法使用参数化构造函数。

您可以让您的类实现IExecutableExtension,在这种情况下使用方法:

public void setInitializationData(IConfigurationElement config, String propertyName, Object data) throws CoreException;

将在施工后直接调用。这可用于从配置元素中获取额外信息。