`
zhaozhongwei
  • 浏览: 52806 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

template

阅读更多

   <extension
         point="org.eclipse.ui.editors.templates">
      <contextType
            name="java"
            class="org.eclipse.jdt.internal.corext.template.java.JavaContextType"
            id="java">
      </contextType>

      <include
        file="templates/default-templates.xml"
        translations="$nl$/templates/default-templates.properties">
      </include>
      <include
        file="templates/default-codetemplates.xml"
        translations="$nl$/templates/default-templates.properties">
      </include>
      <include
            file="templates/default-swttemplates.xml"
            translations="$nl$/templates/default-templates.properties">
      </include>

      <resolver
            class="org.eclipse.jdt.internal.corext.template.java.ExceptionVariableNameResolver"
            contextTypeId="java"
            description="%templates.java.resolvers.ExceptionVariableName.description"
            name="%templates.java.resolvers.ExceptionVariableName.name"
            type="exception_variable_name">
      </resolver>
   </extension>

 

 

在写java代码的时候,我们写sysout然后按alt+?就会自动出现System.out.println();

 

这个功能就是通过上面的扩展点完成的,我们也可以自定义这样的功能。

 

打开模板会看到sysout对应的是System.out.println(${word_selection}${});${cursor},${}里面是变量都是通过resolver扩展点或者contextType内部的addResolver添加进来的,resolver通过contextTypeId与相应的contextType对应,在运行时把变量换成具体的值。tamplate里面定义的都被保存到include的文件里面

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics