【Javadoc生成开发文档(Terminal或IDEA中)】

news2024/10/7 18:28:08

Javadoc生成开发文档

  • 一、Javadoc工具介绍
  • 二、常用标记
  • 三、使用方式
  • 四、生成文档的两种方式
    • 1.Terminal方式
    • 2.IDE方式

一、Javadoc工具介绍

大家在查看官网文档的时候,会不会感慨人家的帮助文档写的真有逻辑,层次分明?
在这里插入图片描述
不要羡慕,你也可以!Java官方提供了Javadoc工具,便于用户自己生成项目源码配套的API开发文档,供开发人员及其他用户查看使用。该工具通过对源码中定义的类、方法、变量的特定注释信息进行提取,生成对应的开发文档。只要编码人员在源码编写时,进行合法特定的信息注释,在编码结束后即可通过Javadoc工具生成配套的开发文档。
Javadoc工具现在已经不需要单独安装了,在安装JDK的时候已经附带配置好了,大家可去自己的JDK安装路径的bin目录下查看一下,是否存在javadoc.exe,如果存在说明我们可以直接使用,如下所示:
在这里插入图片描述

二、常用标记

上面提到,开发人员需要以特定的注释方式进行注释,Javadoc工具才可以成功生成配套文档,那么下面这些就是所说的特定注释方式,在源码文件中我们需要使用这些标记进行注释,最后才可以被成功识别(切记Java源码中使用文档注释方式):

标签说明
@author 作者作者标识
@version 版本号版本号
@param 参数名描述方法的入参名及描述信息,如入参有特别要求,可在此注释。
@return 描述对函数返回值的注释
@deprecated 过期文本标识随着程序版本的提升,当前API已经过期,仅为了保证兼容性依然存在,以此告之开发者不应再用这个API。
@throws异常类名构造函数或方法所会抛出的异常。
@throws异常类名构造函数或方法所会抛出的异常。
@exception 异常类名同@throws。
@see 引用查看相关内容,如类、方法、变量等。
@since 描述文本API在什么程序的什么版本后开发支持。
{@link包.类#成员 标签}链接到某个特定的成员对应的文档中。
{@value}当对常量进行注释时,如果想将其值包含在文档中,则通过该标签来引用常量的值。

更多可查看官方文档。

三、使用方式

javadoc [选项] [java包名] [java源文件名]

其中常用选项如下图所示,大家不用记,需要时直接在本地Terminal中输入

javadoc -help

命令,就会出现如下所示的帮助信息,大家根据需要添加相应的选项即可。

在这里插入图片描述
当然,使用上述命令的前提是大家已经在自己本机中配置好了JDK的环境变量,因为上面提过javadoc.exe文件是在JDK安装目录的bin目录下的,如果没有配置环境变量,这里会提示该命令不存在的错误。

四、生成文档的两种方式

到这里,我已具体实例操作展示两种生成开发文档的过程:
对应文件内容如下:
在这里插入图片描述

1.Terminal方式

Terminal方式其实使用的很少了,毕竟现在各种IDE已经应用的很成熟,很多工作都是一键完成,这里还是简单介绍一下这种方式,大家了解即可:
1)打开本地Terminal(Win+R输入cmd即可):
在这里插入图片描述

2)进入源码对应的包(package):
在这里插入图片描述

3)输入javadoc命令生成开发文档即可(该文档会默认在当前目录下生成):
这里直接生成一个软件包对应的开发文档,也可直接生成单个java源文件的开发文档,此时需要进入到该源文件所在文件目录下。
在这里插入图片描述
生成结果如下:

在这里插入图片描述
使用浏览器打开此处的任意html文件,即可查看本项目对应的开发文档:
在这里插入图片描述

默认只会识别公共类、公共方法对应的注释信息,如果需要调整显示所有类、所有方法可通过第三节中提到的“选项 -private”进行设置。
在这里插入图片描述
4)解决中文乱码问题
此处需特别说明,如果源码中包括中文注释信息,在生成文档中可能会发生中文乱码的现象,我们可通过如下命令去解决,其实还是采用javadoc 命令中的编码选项:

javadoc -encoding UTF-8 -charset UTF-8 [包名] [源文件]

如此,在生成的开发文档中则不会发生乱码现象了:
在这里插入图片描述

2.IDE方式

热门的Java开发IDE当属IDEA,下面介绍一下IDEA中如何生成开发文档:
1)光标选中想要生成对应文档的目录或者文件,然后依次点击Tools->Generate JavaDoc
在这里插入图片描述

打开界面如下所示,在这里可进行开发文档输出目录、注释信息识别范围等选择:
注意此处输出目录建议选择“绝对路径”
在这里插入图片描述

对应生成结果与Terminal方式一样,大家自行测试即可:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/51889.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

最便宜的唯品会

你买的真的划算吗?这里可以看到什么时候最划算 作为一个每个月在vip上买买买花费几万的资深vip用户,我想给你说的是,VIP上的东西是真的。除了平时的衣服鞋子,再到家里的微波炉、电磁炉、热水壶等小家电,我都是从给vip…

抓包工具简单介绍和 fiddler 安装

目录 1、 抓包工具介绍 2、原理 3、fiddler 安装 1、 抓包工具介绍 抓包工具,是个特殊的软件,相当于一个 “代理程序”,浏览器给服务器发的请求就会经过这个代理程序,进一步的就能分析出请求和响应的结果如何。 通俗的讲&…

我们真的需要把训练集的损失降到零吗?

在训练模型的时候,我们需要将损失函数一直训练到0吗?显然不用。一般来说,我们是用训练集来训练模型,但希望的是验证机的损失越小越好,而正常来说训练集的损失降到一定值后,验证集的损失就会开始上升&#x…

手摸手教你 docker+jenkins+gitlab 部署你的前端项目

学习了一周的CICD,踩了很多坑,都是泪,特此记录一下整个过程,本次项目产出效果是,git push的时候自动化直接部署到服务器上,以下是整个大致流程: 本地代码push到gitlab gitlab通过webhook通知到jenkins jenkins拉取gitlab仓库代码,并执行shell脚本 shell脚本执行docker命令,打…

python数据分析——NumPy基础

目录 一、创建数组的方法 二、array的属性 三、创建特殊的数组 四、数组的变换 4.1、数组重塑 4.2、数组合并 4.3、数组分割 4.4、数组转置和轴对换 五、数组的索引和切片 5.1、一维数组的索引 5.2、多维数组的索引 5.3、多维数组的访问 六、数组的运算 6.1、数组…

Apollo 应用与源码分析:guardian 紧急处置

目录 概念 代码 分析 概念 Guardian模块的主要作用是监控自动驾驶系统状态,当出现模块为失败状态的时候,会主动切断控制命令输出,并且刹车。 有点像是保险丝,有一个fallback机制。 guardian模块的触发条件主要有2个。 上报…

虚拟机的快照与克隆

简单回顾以下快照 快照的拍摄: 记录虚拟机当前的状态 拍摄快照时,系统一定要处于关机状态 转到: 回到某一个历史快照节点 克隆 复制某一个历史快的的节点 克隆的方式 链接克隆: 当前节点文件家只存储差异性数据 相同数据放在原…

RabbitMQ之延迟队列

延迟消息是指的消息发送出去后并不想立即就被消费,而是需要等(指定的)一段时间后才触发消费。 例如下面的业务场景:在支付宝上面买电影票,锁定了一个座位后系统默认会帮你保留15分钟时间,如果15分钟后还没付…

zcu106 lwip搭建以太网配置寄存器

文章目录实验一1.配置网口GEM32.导出xsa文件,在vitis中创建工程,选择freertos10_xilinx的操作系统来使用3.配置lwip211,选择SOCKET API的模式4.创建工程 选择FreeRTOS Iwip TCP Perf Server模板5.代码分析main.cfreertos_tcp_perf_server.cfr…

基于yolov5n的轻量级MSTAR遥感影像目标检测系统设计开发实战

做过很多目标检测类的项目了,最近看到一个很早之前用过的数据集MSTAR,之前老师给的任务是基于这个数据集来搭建图像识别模型,殊不知他也是可以用来做目标检测的,今天正好有点时间就想着基于这个数据集来做一下目标检测实践。 首先…

利用车载摄像头了解道路语义的鸟瞰图

以下内容来自从零开始机器人SLAM知识星球 每日更新内容 点击领取学习资料 → 机器人SLAM学习资料大礼包 #论文##开源代码# Understanding Bird’s-Eye View of Road Semantics using an Onboard Camera 论文地址:https://arxiv.org/abs/2012.03040 作者单位&#…

自助建站工具

每用一次自助建站工具,就有一个程序员失业。 作为企业老板的你,要为公司的获客,企业推广发愁,但是预算有限,招人也很困难,不仅要面试程序员,后续还要检验这个程序员的功力,实在是太…

CentOS升级python3版本

介绍 本文将详细介绍在CentOS7.9系统的服务器将自带的python3.6.8版本升级到3.8.0版本的过程。 在升级前CentOS7.9中已经同时存在两个python版本分别是2.7.5和3.6.8。 查看CentOS版本命令: cat /etc/centos-release这是我升级后的python版本(python3升…

Minio设置文件永久访问和下载

1. docker pull minio/mc 2. docker run -it --entrypoint/bin/sh minio/mc 3. mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> [--api API-SIGNATURE] mc ls minio ALIAS: 别名就是给你的云存储服务起了一个…

2021-02-01

oracle设置定期修改密码 --通过如下sql查询用户密码有效期配置 SELECT username,PROFILE FROM dba_users; --上述sql查询结果一般为default --使用如下sql可以查询到default的默认值 select * from dba_profiles where profile DEFAULT and resource_name PASSWORD_LI…

HTML+CSS大作业【传统文化艺术耍牙15页】学生个人网页设计作品

&#x1f389;精彩专栏推荐 &#x1f4ad;文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;毕设项目精品实战案例 (10…

MES系统中生产计划模块的重要作用

MES系统中的“生产调度”支持从“工单管理”中收到的作业队列&#xff0c;根据生产目标&#xff08;时间和数量&#xff09;&#xff0c;必须考虑到人员、设备、材料的可用性等限制和生产过程中的各种中断&#xff0c;生成一个作业时间表&#xff0c;即生产作业计划。MES系统“…

iOS 接入firebase简易步骤

接入准备 去firebase官网注册应用并下载配置文件GoogleService-Info.plist 接入步骤 1.通过cocopods导入以下两个依赖 pod Firebase/Analytics pod Firebase/Core 2.导入成功后将配置文件GoogleService-Info.plist拖入项目中 3.代码支持 引入#import <Firebase/Firebas…

【云原生系列】第五讲:Knative Eventing 下

目录 序言 1.Parallel介绍 1.1 Parallel Spec ​编辑 2.Sequence 2.1.Sequence Spec 2.2适用场景 2.3 Broker/Trigger 2.4 代码示例 3.投票 序言 三言两语&#xff0c;不如细心探索。 今天整理了一下Eventing 相关知识点 ParallelSequence希望此文&#xff0c;能帮…

C#正则表达式总结

推荐一个专门用于编写正则表达式的网站&#xff1a; regex101: build, test, and debug regex 参考文档&#xff1a; https://zh.wikipedia.org/wiki/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F 特殊字符的意义&#xff1a; ^ : 表示字符串的开头 例子&#xff1a; …