在模板中使用模板 - eclipse

时间:2011-05-04 13:01:45

标签: java eclipse

当我从.net到Java的过渡中慢慢爬行时,我发现有关eclipse IDE的更多有趣的东西。我最近偶然发现了它的模板,我很喜欢它。这带给我一个问题:我可以在模板中调用模板吗?当然它只是一个复制和粘贴的问题,但我想知道它是否可以完成。

1 个答案:

答案 0 :(得分:5)

是的,实际上,您可以在默认设置中有一个示例。

如果您转到偏好设置 - > Java - >代码风格 - >代码模板,您可以导出所有提供的Java模板。在那里,您将看到以下文件模板(为便于阅读而格式化):

<template 
    autoinsert="true" 
    context="filecomment_context" 
    deleted="false" 
    description="Comment for created Java files" 
    enabled="true" 
    id="org.eclipse.jdt.ui.text.codetemplates.filecomment" 
    name="filecomment">
    /** * */
</template>

以及更进一步的 New Type ,它使用了 File 模板:

<template 
    autoinsert="true" 
    context="newtype_context" 
    deleted="false" 
    description="Newly created files" 
    enabled="true" 
    id="org.eclipse.jdt.ui.text.codetemplates.newtype" 
    name="newtype">
    ${filecomment} ${package_declaration} ${typecomment} ${type_declaration}
</template> 

因此,如果您想使用另一个模板制作模板,则基本形式是使用美元符号前缀来引用子模板的ID。例如:

<template 
    autoinsert="true" 
    context="BobOuter_context" 
    deleted="false" 
    description="Bob example outer template" 
    enabled="true" 
    id="bob.example.outertemplate" 
    name="BobOuter">
    BobOuterBegins Insert inner template ${bob.example.innertemplate} BobOuterEnds
</template> 

<template 
    autoinsert="true" 
    context="BobInner_context" 
    deleted="false" 
    description="Bob example inner template" 
    enabled="true" 
    id="bob.example.innertemplate" 
    name="BobInner">
    BobInnerBegins Super awesome content goes here BobInnerEnds
</template>