Eclipse中扩展点模式的结构

时间:2014-05-14 15:34:04

标签: eclipse eclipse-plugin schema

我正在为我的Eclipse插件创建自己的扩展点,我也看了一下其他扩展点的模式,例如org.Eclipse.ui.editors的。

然而,有一点我不明白:使用扩展编辑器在plugin.xml中添加扩展时,像" editor"作为childelements添加到"扩展"。但是,在扩展点模式中,这些元素不会被声明为" extension"的子元素。但在同一水平上。这是如何组合在一起的?

这是注册扩展时生成的xml:

<plugin>
    <extension
         point="org.eclipse.ui.editors">
        <editor
            class="mc.umlp.cd.graphics.CDGraphicsEditor"
            ....>
        </editor>
    </extension>
</plugin>

这是editors.exsd。

的摘录
<schema targetNamespace="org.eclipse.ui" xmlns="http://www.w3.org/2001/XMLSchema">
    ...
    <element name="extension">
    ...
    </element>
    <element name="editor">
    ...
    </element>

    <element name="contentTypeBinding">
    ...
    </element>
...
</schema>

当我尝试将扩展名注册到我自己的扩展点时,我无法将任何子元素添加到扩展名中,这就是我期望查看扩展点模式的内容。

1 个答案:

答案 0 :(得分:1)

您使用sequencechoice添加对其他元素的引用:

<element name="extension">
  <complexType>
     <sequence minOccurs="1" maxOccurs="unbounded">
        <element ref="detail"/>
     </sequence>
     ...
  </complexType>
</element>

<element name="detail">
 ....
</element>

“定义”选项卡如下所示:

enter image description here