- 浏览: 38603 次
- 性别:
- 来自: 北京
文章分类
最新评论
一、Eclipse 文件中java的注释模板
方法其一:通过菜单 Window->Preference 打开参数设置面板,然后选择:
Java -> Code Style -> Code Templates
代码:types
/**
* @ClassName: ${type_name}
* @Description:
* @author:lijunling
* @date ${date} ${time}
* @version V1.0
*/
二、模板注释
首先,先建一个空的XML文件,然后将以下的代码复制进去!下面的注释中包括了日常中使用频繁的代码注释模版!模板里面的名字,版本等等信息需要修改为自己的信息
第2步:将其导入到开发工具中,点击window->preference->java->CodeStyle->Code Templates->Comments->Import
<?xml version="1.0" encoding="UTF-8"?><templates><template autoinsert="true" context="gettercomment_context" deleted="false" description="Comment for getter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name="gettercomment">/** * @return the ${bare_field_name} */</template><template autoinsert="true" context="settercomment_context" deleted="false" description="Comment for setter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.settercomment" name="settercomment">/** * @param ${param} the ${bare_field_name} to set */</template><template autoinsert="true" context="constructorcomment_context" deleted="false" description="Comment for created constructors" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name="constructorcomment">/** * ${tags} */</template><template autoinsert="false" context="filecomment_context" deleted="false" description="Comment for created Java files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.filecomment" name="filecomment">/** * Copyright (C) ${year} Asiainfo-Linkage * * * @className:${package_name}.${type_name} * @description:${todo} * * @version:v1.0.0 * @author:lijunling * * Modification History: * Date Author Version Description * ----------------------------------------------------------------- * ${date} lijunling v1.0.0 create * * */</template><template autoinsert="true" context="typecomment_context" deleted="false" description="Comment for created types" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.typecomment" name="typecomment">/** * @author lijunling * * ${tags} */</template><template autoinsert="true" context="fieldcomment_context" deleted="false" description="Comment for fields" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name="fieldcomment">/** * */</template><template autoinsert="false" context="methodcomment_context" deleted="false" description="Comment for non-overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name="methodcomment">/** * * @Function: ${package_name}.${enclosing_type}.${enclosing_method} * @Description: * * ${tags} * * @version:v1.0 * @author:lijunling * @date:${date} ${time} * * Modification History: * Date Author Version Description * ----------------------------------------------------------------- * ${date} lijunling v1.0.0 create */</template><template autoinsert="true" context="overridecomment_context" deleted="false" description="Comment for overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name="overridecomment">/* (non-Javadoc) * ${see_to_overridden} */</template><template autoinsert="true" context="delegatecomment_context" deleted="false" description="Comment for delegate methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name="delegatecomment">/** * ${tags} * ${see_to_target} */</template><template autoinsert="false" context="newtype_context" deleted="false" description="Newly created files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.newtype" name="newtype">${filecomment} ${package_declaration} ${type_declaration}</template><template autoinsert="true" context="classbody_context" deleted="false" description="Code in new class type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.classbody" name="classbody"> </template><template autoinsert="false" context="interfacebody_context" deleted="false" description="Code in new interface type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name="interfacebody"></template><template autoinsert="true" context="enumbody_context" deleted="false" description="Code in new enum type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.enumbody" name="enumbody"> </template><template autoinsert="true" context="annotationbody_context" deleted="false" description="Code in new annotation type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name="annotationbody"> </template><template autoinsert="true" context="catchblock_context" deleted="false" description="Code in new catch blocks" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.catchblock" name="catchblock">// ${todo} Auto-generated catch block ${exception_var}.printStackTrace();</template><template autoinsert="true" context="methodbody_context" deleted="false" description="Code in created method stubs" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodbody" name="methodbody">// ${todo} Auto-generated method stub ${body_statement}</template><template autoinsert="true" context="constructorbody_context" deleted="false" description="Code in created constructor stubs" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name="constructorbody">${body_statement} // ${todo} Auto-generated constructor stub</template><template autoinsert="true" context="getterbody_context" deleted="false" description="Code in created getters" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.getterbody" name="getterbody">return ${field};</template><template autoinsert="true" context="setterbody_context" deleted="false" description="Code in created setters" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.setterbody" name="setterbody">${field} = ${param};</template><template autoinsert="true" context="gettercomment_context" deleted="false" description="Comment for getter function" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.gettercomment" name="gettercomment">/** * @return the ${bare_field_name} */</template><template autoinsert="true" context="settercomment_context" deleted="false" description="Comment for setter function" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.settercomment" name="settercomment">/** * @param ${param} the ${bare_field_name} to set */</template><template autoinsert="true" context="constructorcomment_context" deleted="false" description="Comment for created constructors" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorcomment" name="constructorcomment">/** * ${tags} */</template><template autoinsert="true" context="filecomment_context" deleted="false" description="Comment for created JavaScript files" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.filecomment" name="filecomment">/** * */</template><template autoinsert="true" context="typecomment_context" deleted="false" description="Comment for created types" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.typecomment" name="typecomment">/** * @author lijunling * * ${tags} */</template><template autoinsert="true" context="fieldcomment_context" deleted="false" description="Comment for vars" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.fieldcomment" name="fieldcomment">/** * */</template><template autoinsert="true" context="methodcomment_context" deleted="false" description="Comment for non-overriding function" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.methodcomment" name="methodcomment">/** * ${tags} */</template><template autoinsert="true" context="overridecomment_context" deleted="false" description="Comment for overriding functions" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.overridecomment" name="overridecomment">/* (non-JSDoc) * ${see_to_overridden} */</template><template autoinsert="true" context="delegatecomment_context" deleted="false" description="Comment for delegate functions" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.delegatecomment" name="delegatecomment">/** * ${tags} * ${see_to_target} */</template><template autoinsert="false" context="newtype_context" deleted="false" description="Newly created files" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.newtype" name="newtype"> ${package_declaration} ${typecomment} ${type_declaration}</template><template autoinsert="true" context="classbody_context" deleted="false" description="Code in new class type bodies" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.classbody" name="classbody"> </template><template autoinsert="true" context="catchblock_context" deleted="false" description="Code in new catch blocks" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.catchblock" name="catchblock">// ${todo} Auto-generated catch block ${exception_var}.printStackTrace();</template><template autoinsert="true" context="methodbody_context" deleted="false" description="Code in created function stubs" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.methodbody" name="methodbody">// ${todo} Auto-generated function stub ${body_statement}</template><template autoinsert="true" context="constructorbody_context" deleted="false" description="Code in created constructor stubs" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorbody" name="constructorbody">${body_statement} // ${todo} Auto-generated constructor stub</template><template autoinsert="true" context="getterbody_context" deleted="false" description="Code in created getters" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.getterbody" name="getterbody">return ${field};</template><template autoinsert="true" context="setterbody_context" deleted="false" description="Code in created setters" enabled="true" id="org.eclipse.wst.jsdt.ui.text.codetemplates.setterbody" name="setterbody">${field} = ${param};</template></templates>
三、开发规范
创建Standard.xml内容如下,Window->preferences->CheckStyle->new
自定义填写name后,Set As Default 点击OK即可
Standard.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN" "http://www.puppycrawl.com/dtds/configuration_1_3.dtd"> <!-- This configuration file was written by the eclipse-cs plugin configuration editor --> <!-- Checkstyle-Configuration: Standard Description: Standard --> <module name="Checker"> <property name="severity" value="warning"/> <property name="charset" value="UTF-8"/> <message key="general.exception" value="捕获异常 {0}"/> <message key="general.fileNotFound" value="文件无法找到!"/> <module name="TreeWalker"> <message key="general.exception" value="捕获异常{0}"/> <module name="AbstractClassName"> <property name="severity" value="ignore"/> <property name="format" value="^[A-Z][A-Z0-9a-z]*(_[A-Z0-9a-z]+)*$"/> <message key="illegal.abstract.class.name" value="抽象类''{0}''需要以大写字母开头."/> <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/> </module> <module name="ConstantName"> <property name="severity" value="ignore"/> <property name="format" value="^[A-Z|\d]*(_[A-Z|\d]+)*$"/> <message key="name.invalidPattern" value="常量名只允许大写字母和数字,单词间用下划线隔开。"/> <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/> </module> <module name="MemberName"> <property name="format" value="^[a-z][a-zA-Z0-9|_]*$"/> <message key="name.invalidPattern" value="类的属性名采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。不应以下划线或美元符号开头"/> </module> <module name="MethodName"> <property name="format" value="^[a-z][a-zA-Z0-9|_]*$"/> <message key="name.invalidPattern" value="方法名字采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。"/> <message key="method.name.equals.class.name" value="''{0}''方法名不能和enclosing class名相同."/> </module> <module name="PackageName"> <property name="format" value="^[a-z]+(\.[a-z][a-z0-9]*)*$"/> <message key="name.invalidPattern" value="包名''{0}'' 采用全部小写字母或者数字."/> </module> <module name="ParameterName"> <property name="format" value="^[a-z][a-zA-Z0-9|_]*$"/> <message key="name.invalidPattern" value="参数名采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。不应以下划线或美元符号开头"/> </module> <module name="StaticVariableName"> <property name="format" value="^[a-z][a-zA-Z0-9|_]*$"/> <message key="name.invalidPattern" value="静态变量名采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。不应以下划线或美元符号开头"/> </module> <module name="TypeName"> <message key="name.invalidPattern" value="类或者接口的命名要是数字或者字母,且以大写字母开头"/> </module> <module name="AvoidStaticImport"> <property name="severity" value="ignore"/> <message key="import.avoidStatic" value="{0}导入静态成员应该避免."/> <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/> </module> <module name="UnusedImports"> <message key="import.unused" value="{0}未被使用."/> </module> <module name="RedundantImport"> <message key="import.same" value="{0}是重复的包导入."/> <message key="import.duplicate" value="{1}与第{0,number,integer} 行导入重复 ."/> <message key="import.lang" value="{0}为java.lang包的内容,不需要导入."/> </module> <module name="ModifierOrder"> <message key="mod.order" value="''{0}''修饰符不符合JLS建议,正确的顺序是(public,protected,private,abstract,static,final,transient,volatile,synchronized,native,strictfp)"/> <message key="annotation.order" value="''{0}''注释修饰符不应该在非注释修饰符之前."/> </module> <module name="RedundantModifier"> <property name="severity" value="ignore"/> <message key="redundantModifier" value="''{0}''修饰符不需要."/> <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/> </module> <module name="EqualsHashCode"> <message key="equals.noHashCode" value="''equals()''的定义和''hashCode()''的定义不匹配."/> </module> <module name="EmptyBlock"> <message key="block.empty" value="{0} 块为空."/> <message key="block.noStmt" value="至少要有一个语句"/> </module> <module name="InnerAssignment"> <message key="assignment.inner.avoid" value="内部的赋值应该避免."/> </module> <module name="MagicNumber"> <property name="tokens" value="NUM_DOUBLE,NUM_FLOAT"/> <message key="magic.number" value="''{0}'' 的定义没有明确含义,即魔术数."/> </module> <module name="MissingSwitchDefault"> <message key="missing.switch.default" value="switch语句缺少"default" 分支."/> </module> <module name="RedundantThrows"> <property name="severity" value="ignore"/> <property name="allowUnchecked" value="true"/> <property name="allowSubclasses" value="true"/> <property name="suppressLoadErrors" value="true"/> <message key="redundant.throws.classInfo" value="{0}的类信息无法获取."/> <message key="redundant.throws.duplicate" value="''{0}''异常多次处理,此异常冗余."/> <message key="redundant.throws.subclass" value="''{0}''是''{1}''的子类,此异常冗余."/> <message key="redundant.throws.unchecked" value="''{0}'' 异常没有声明,此异常冗余."/> <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/> </module> <module name="SimplifyBooleanExpression"> <message key="simplify.expression" value="表达式可以简化."/> </module> <module name="SimplifyBooleanReturn"> <message key="simplify.boolreturn" value="可以去掉条件逻辑."/> </module> <module name="StringLiteralEquality"> <message key="string.literal.equality" value="String类型的比较需要使用equals(), 而不是''{0}''."/> </module> <module name="IllegalCatch"> <property name="illegalClassNames" value="java.lang.Throwable, java.lang.RuntimeException"/> <message key="illegal.catch" value="''{0}''异常捕获不允许."/> </module> <module name="IllegalThrows"> <message key="illegal.throw" value="''{0}''异常抛出不允许."/> </module> <module name="DeclarationOrder"> <message key="declaration.order.constructor" value="构建器的定义次序不对,应按照如下顺序:static变量,实例变量,构建器,方法"/> <message key="declaration.order.access" value="同类型(static,实例)变量定义顺序不对,应按照如下顺序:public,protected,package level[no access modifier],private"/> <message key="declaration.order.instance" value="实例变量的定义顺序不对,应按照如下顺序:static变量,实例变量,构建器,方法"/> <message key="declaration.order.method" value="方法定义的顺序不对,应按照如下顺序:static变量,实例变量,构建器,方法"/> <message key="declaration.order.static" value="static变量的定义顺序不对,应按照如下顺序:static变量,实例变量,构建器,方法"/> </module> <module name="DefaultComesLast"> <message key="default.comes.last" value="Default 需要在 switch 语句的最后."/> </module> <module name="FallThrough"> <message key="fall.through.last" value="switch语句的后一个分支失败."/> <message key="fall.through" value="switch语句的前一个分支失败."/> </module> <module name="MultipleVariableDeclarations"> <message key="multiple.variable.declarations.comma" value="每个语句只能有一个变量的申明."/> <message key="multiple.variable.declarations" value="每行代码只允许一个变量定义."/> </module> <module name="ArrayTypeStyle"> <message key="array.type.style" value="数组的括号位置不合法."/> </module> <module name="HiddenField"> <property name="ignoreConstructorParameter" value="true"/> <property name="ignoreSetter" value="true"/> <property name="ignoreAbstractMethods" value="true"/> <message key="hidden.field" value="''{0}''与类的属性命名重复."/> </module> <module name="LeftCurly"> <message key="line.new" value="''{0}''应该在新的一行."/> <message key="line.previous" value="''{0}''应该在上一行."/> </module> <module name="RightCurly"> <message key="line.alone" value="''{0}''应该在独立的一行."/> <message key="line.new" value="''{0}''应该在新的一行."/> <message key="line.same" value="''{0}''应该在同一行."/> </module> <module name="NeedBraces"> <message key="needBraces" value="''{0}'' 需要使用 '''{}'''."/> </module> <module name="JavadocType"> <message key="javadoc.missing" value="类或者接口缺少注释"/> <message key="javadoc.unusedTagGeneral" value="未使用的Java文档标记"/> </module> <module name="AvoidStarImport"> <message key="import.avoidStar" value="{0}包含"*"."/> </module> <module name="JavadocMethod"> <property name="allowMissingParamTags" value="true"/> <property name="allowMissingThrowsTags" value="true"/> <property name="allowMissingReturnTag" value="true"/> <property name="allowMissingPropertyJavadoc" value="true"/> <property name="suppressLoadErrors" value="true"/> <property name="tokens" value="METHOD_DEF"/> <message key="javadoc.duplicateTag" value="{0} 标记重复."/> <message key="javadoc.missing" value="方法缺少注释"/> <message key="javadoc.invalidInheritDoc" value="'{'@inheritDoc'}' 标记使用不正确."/> <message key="javadoc.unusedTagGeneral" value="未使用Java文档标记."/> <message key="javadoc.return.expected" value="需要 @return 标记."/> </module> <module name="RegexpSinglelineJava"> <property name="format" value="System\.out\.((print)|(write))"/> <property name="message" value="禁止使用System.out.print,System.out.println,System.out.write"/> <property name="ignoreComments" value="true"/> </module> <module name="LineLength"> <property name="max" value="140"/> <property name="tabWidth" value="4"/> <message key="maxLineLen" value="代码行超过 {0,number,integer} 个字符."/> </module> <module name="PackageDeclaration"> <message key="missing.package.declaration" value="缺少包的申明"/> </module> </module> <module name="FileLength"> <message key="maxLen.file" value="文件长度为 {0,number,integer} (不允许超过{1,number,integer})."/> </module> </module>
相关推荐
在Eclipse中,用户可以自定义代码注释模板,这通常涉及到类、方法、变量等不同类型的注释结构。`codetemplates.xml`文件就是存储这些自定义模板的配置文件,通过编辑这个文件,我们可以定制符合个人或团队编码规范的...
总之,Eclipse Java注释模板是提升开发效率、保持代码规范的重要工具。通过合理的配置和使用,它可以帮助开发者快速创建高质量的代码注释,让代码更易读、更易维护。在日常工作中,我们应该充分利用这样的功能,提高...
本资料包“Eclipse注释模板和格式化模板.zip”包含了配置这两个功能所需的文件。 首先,我们来看看`codeFormatter.xml`文件。这个文件存储了Eclipse的代码格式化规则。通过定制这些规则,你可以使你的代码遵循特定...
Eclipse作为一款非常受欢迎的Java集成开发环境(IDE),提供了强大的功能来支持用户自定义代码注释模板,这有助于保持代码的一致性和可读性。 #### 二、Eclipse Java注释模板配置方法 要在Eclipse中设置Java注释...
一、Eclipse注释模板自定义 1. **打开Eclipse注释模板设置** 要自定义注释模板,首先需要进入Eclipse的首选项设置。点击菜单栏上的“Window” -> “Preferences”,然后在弹出的对话框中依次选择“Java” -> ...
本篇将详细介绍Eclipse中的代码注释模板——code templates,并基于提供的文件`convertion.xml`和`codetemplates.xml`进行解析。 **Eclipse代码注释模板** Eclipse的代码注释模板允许用户自定义不同类型的注释模板...
超使用的eclipse中注释模板和代码格式化模板 ,
代码格式化和代码注释规范,导入eclipse中,一般在类和方法上都必须加通用文档注释,说明类和方法的作用,在特殊字段加相应注释,在复杂代码逻辑加相应行内注释说明代码逻辑。
Eclipse代码注释模板,可以用于myeclipse等开发IDE,注释包括Class,method等
eclipse 代码注释模板(很实用)
一、Eclipse注释模板 Eclipse的注释模板允许程序员快速插入预定义的注释结构,例如类、方法或变量的注释,而无需手动输入每一行。这不仅节省时间,而且有助于保持团队间的一致性和代码文档的完整性。注释模板是通过...
Eclipse是一款广泛使用的Java集成开发环境(IDE),它拥有丰富的功能和高度可定制性,其中就包括了自定义注释模板和代码格式化模板。这些模板对于提高开发效率、保持代码一致性以及提升团队协作有着重要作用。 注释...
eclipse代码注释模板 。
将代码注释以xml形式,直接导入eclipse。免去了繁琐的一步步的配置
在编程世界里,保持代码的清晰性和可读性至关重要,而使用IDE(集成开发环境)中的注释模板和代码格式化工具能极大地提高效率。Eclipse作为一款强大的Java IDE,提供了丰富的自定义功能,包括自定义代码注释模板和...
Eclipse的代码注释模板很丰富,如:user、year、date、time等等,通过在eclipse.ini文件中-Duser.name=xxxx进行配置,但是Eclipse的Preferences界面至今都不支持定制自己的注释模板变量,要新增一个注释变量的话,就...
本文将深入探讨Eclipse注释模板的设置与导入方法,帮助开发者更高效地编写和管理代码。 #### 一、注释模板的作用与意义 注释模板是Eclipse为开发者提供的一种自动生成注释的功能,通过预设的模板格式,可以在创建...
下面我们将深入探讨如何在Eclipse中设置和使用注释模板。 首先,让我们理解什么是注释模板。注释模板是预先定义的一段文本,通常包含一些可替换的占位符,例如作者名、日期等。当你在编写代码时,通过激活模板,...
本文将详细介绍如何在 Eclipse 和 MyEclipse 中设置和使用注释模板,以及如何导入和配置提供的 "eclipse注释模板"。 1. **Eclipse 和 MyEclipse 注释模板** Eclipse 和 MyEclipse 都允许用户创建和管理自己的代码...