apt:comment(注释工具)(代码片段)

麦田里的守望者-Jiang 麦田里的守望者-Jiang     2022-12-01     506

关键词:

comment

comment 是我开发一个帮助开发人员查看项目API的工具。

comment 的主要作用是将类注释扫描到文档中。通过在类中添加类注解@Comment,在项目编译的时候,生成.java.html 文档。.java.html 文档会把一个包下的每个类具有的方法汇聚到一起,帮助开发人员一览项目 API。

导入工具

Java Module

在你要使用该工具的 Module 的 build.gradle 文件中添加依赖:

dependencies 
    annotationProcessor 'com.wangjiang:comment-doc:0.0.3'
    implementation 'com.wangjiang:comment-doc:0.0.3'

Kotlin Module

在你要使用该工具的 Module 的 build.gradle 文件中添加依赖:

apply plugin: 'kotlin-kapt'

dependencies 
    kapt 'com.wangjiang:comment-doc:0.0.3'
    implementation 'com.wangjiang:comment-doc:0.0.3'

配置可选参数

还可以在 build.gradle 文件中添加编译配置信息:

android 
    defaultConfig 
        javaCompileOptions 
            annotationProcessorOptions 
                includeCompileClasspath true
                arguments = [ debuggable : 'true',check_comment : 'true']
            
        
    

arguments 参数表示意思:

  • debuggable:表示是否在控制台打印出相关日志信息,值为"true"打印,"false"不打印。
  • check_comment:表示是否会检查添加了注解@Comment的类有类或方法注释,值为"true"检查,在检查中发现类或方法没有注释就会编译失败,"false"不检查。

如果没有添加编译配置信息debuggablecheck_commentdebuggable的默认值是"false",check_comment的默认值是"true"。

使用简单介绍

1.在你需要生成注释文档的类中添加注解@Comment,如在工具类DisplayUtil中添加:

package com.example.comment.util;
/**
 * 页面相关
 *
 * @author wangjiang wangjiang7747@gmail.com
 * @version V1.0
 */
@Comment
public final class DisplayUtil 

    private DisplayUtil() 
        throw new UnsupportedOperationException("不能创建此对象");
    

    /**
     * 获得StatusBar的高度
     *
     * @param context 上下文对象
     * @return 状态栏的高度
     */
    public static int getStatusBarHeight(Context context) 
        Resources resources = context.getResources();
        int resourceId = resources.getIdentifier("status_bar_height", "dimen",
                "android");
        int statusBarHeight = resources.getDimensionPixelSize(resourceId);
        return statusBarHeight;
    
    //省略部分代码


  1. 构建项目,运行./gradlew build./gradlew assembleDebug./gradlew assembleRelease命令。

  2. 构建完成后,查看主 Module 下的目录/build/generated/source/apt/debug/,再找到你添加注解@Comment的类的包下,如上面类包名为com.example.comment.util,则你会在该包下看到文件:JavaCommentDoc.java 和 JavaCommentDoc.html。

4.查看生成的文件 JavaCommentDoc.java :

package com.example.comment.util;
class JavaCommentDoc
	/**
	*	@link com.example.comment.util.DisplayUtil, 页面相关
	*		@link com.example.comment.util.DisplayUtil#getStatusBarHeight(android.content.Context), 获得StatusBar的高度
	*		@link com.example.comment.util.DisplayUtil#getNavigationBarHeight(android.content.Context), 获得NavigationBar的高度
	*		@link com.example.comment.util.DisplayUtil#getActionBarHeight(android.app.Activity), 获得ActionBar的高度,注:在配置文件中获得ActionBar高度可通过:?attr/actionBarSize
	*		@link com.example.comment.util.DisplayUtil#getContentHeight(android.app.Activity), 获得页面高度
	*		@link com.example.comment.util.DisplayUtil#px2dip(android.content.Context,float), 将px转换为dp
	*		@link com.example.comment.util.DisplayUtil#dp2px(android.content.Context,float), 将dp转换为px
	*		@link com.example.comment.util.DisplayUtil#getScreenWidth(android.content.Context), 获得屏幕宽度
	*		@link com.example.comment.util.DisplayUtil#getScreenHeight(android.content.Context), 获得屏幕高度
	*
	*/

JavaCommentDoc.java 文件会把一个包下的每个类具有的方法汇聚到一起,可以通过AndroidStudio 的快捷键也可直接进入到原类。如果有多个包,则有多个JavaCommentDoc.java 文件。

查看生成的文件 JavaCommentDoc.html,需要在浏览器中打开:

JavaCommentDoc.html 和 JavaCommentDoc.java 表达的意思一样。

注释(annotation)(代码片段)

注释可以在编译、类加载、运行时被读取,并执行相应的处理。Annotation可以像修饰符一样使用,可以修饰包、类、构造器、方法、成员变量;、参数、局部变量。访问和处理Annotation的工具成为APT。1)基本Annotation  @Override@Depr... 查看详情

powerdesigner设计表时显示注释列comment(代码片段)

首先,使用PowerDesigner新建模型,File—>NewModel然后,切换到模型类型(Modeltypes)选项卡,选中PhysicalDiagram然后点击右侧表格图标,在左侧面板中创建表格如下。双击表格,找到Columns选项卡,为数据库表... 查看详情

03commentsincprogrammingc编程中的注释(代码片段)

Comments注释简介Let‘stakeaquickbreakfromprogrammingandtalkaboutcomments.Commentshelpprogrammersunderstandwhatexactlythecomputerprogramdoes.Commentsarealsoashortsummaryofyourcomputerprogram.让我们从编程中快速休息一下,来 查看详情

powerdesigner导出的sql脚本不带字段注释,解决办法(代码片段)

...signer默认导出来的SQL没有注解。这一点是因为你没有添加Comment。新问题如果每个表都需要添加一个重复的Comment,那样太麻烦了。所以可以直接改他的模板,把Comment换成Name。原理类似于comment$comment=>comment$name菜单栏:Database>... 查看详情

mysql表和列的注释(代码片段)

...的添加注释的添加是通过在定义表或列的时候在末尾加上COMMENT关键字来实现的,最长支持1024个字符。可以在创建表的时候为表和列添加相应的注释。CREATETABLEtest_comment(idSERIALPRIMARYKEY,col1INT 查看详情

使用jquery在悬停时显示隐藏类(代码片段)

...在鼠标悬停时显示一个菜单。这里是HTML内容:<tdclass="comment_div"><?phpecho("$comment_data['comment']);?><br/><spanclass="comment_actions">Approve|Delete|Spam|Edit</span></td>然后是jQuery代码:$("comment_div").hover(function()$(".comment_ac... 查看详情

shubuntu中的apt(高级软件包工具)命令(代码片段)

查看详情

mysql修改表备注,列信息(代码片段)

...释--创建用户信息表CREATETABLEtb_user(idINTAUTO_INCREMENTPRIMARYKEYCOMMENT‘编号‘,nameVARCHAR(30)COMMENT‘姓名‘)COMMENT=‘用户信息表‘;2、修改表注释ALTERTABLEtb_userCOMMENT‘用户信息表2‘;3、修改字段注释ALTERTABLEt 查看详情

latexalgorithmic中添加comment(代码片段)

Latex中算法伪代码的注释方法需要注意的是下面的代码采用是usepackagealgorithmic而不是usepackagealgorithm2e对应的代码如下:STATE?$sum=0$;FOR[commentforFOR]$j=1$?TO?$100$IF[commentforIF]$j\\%2==1$STATE?$sum=sum+i$;COMMENTnormalcommentENDIFENDFOR 查看详情

linux软件安装之apt+dpkg工具(代码片段)

...安装从源代码编译安装aptAPT是AdvancePackagingTool(高级包装工具)的缩写,是Debian及其派生发行版的软件包管理器,APT可以自动下载,配置,安装二进制或者源代码格式的软件包,因此简化了Unix系统上管理软件的过程。APT最早被设... 查看详情

返回期间关系变量变化的变量(代码片段)

...我和帖子和评论之间有关系。我有$post,我想得到相关的$comments只有值published设置为true。在控制器我有:$post=Post::find($id);$comments=$post->comments->where('published',1)->get();这里变量comments看起来很合适,但是当我这样做时:return['... 查看详情

linux之apt命令详解(代码片段)

...t的全称是AdvancedPackagingTool是Linux系统下的一款安装包管理工具。最初需要在Linux系统中安装软件,需要自行编译各类软件,缺乏一个统一管理软件包的工具。此后当Debian系统出现后,dpkg管理工具也就被设计出来了,此后为了更加... 查看详情

java示例代码_APT如何处理嵌套注释类的注释

java示例代码_APT如何处理嵌套注释类的注释 查看详情

11.设置注释模版(代码片段)

设置路径:preferences-java-codestyle-codetemplate-comments1、文件(Files)注释标签/** *Copyright?2016XXXXXXXX有限责任公司.Allrightsreserved. * *@Title:$file_name *@Project-Bundle:$project_name&nbs 查看详情

eclipse配置注释模板(代码片段)

通过菜单Window->Preference->Java->CodeStyle->CodeTemplates在右侧选择Comments选择修改选项Files:/****Title:$file_name**Description:**Copyright:Copyright(c)2019**Company:**@authorEthan**@date$date**@ver 查看详情

vscode常用插件(代码片段)

...ner配置插件管理(换机必备):SettingsSync注释美化:BetterComments//常用配置"better-comments.tags":["tag":"!","color":"#FF2D00",&quo 查看详情

java注释(comment)

          //单行注释/**/多行注释单行注释和多行注释,注释了的内容不参与编译。编译以后生成的.class结尾的字节码文件中不包含注释掉的信息多行注释不可以嵌套使用还可以用来调试代码,... 查看详情

获取指定单元格注释的函数(代码片段)

有人在群里问如何获取Excel单元格的注释,就给他写了下面的代码。1FunctionFuncNote(strCellAsRange)2Application.Volatile3FuncNote=strCell.Comment.Text4EndFunction  查看详情