文章永久连接:https://tech.souyunku.com/2417
一直以来,Java 生成的文档 JavaDoc 一直使用的都是 HTML 4 格式,这次 Java 9 良心大大的发现,使用了 HTML 5 ,但还不是默认的,如果要输出 HTML 5 格式,还必须在命令行程序中添加 -html5
选项。
旧的 JavaDoc 文档格式
我们先在当前工作区,例如我的是 D:\devops\java9
的 src
目录下创建一个文件 JavaDocTester.java
,内容如下
/**
* @author MahKumar
* @version 0.1
*/
public class JavaDocTester {
/**
* 默认的方法用于输出 Hello World
* <p>Hello world</p>
* @param args 命令行参数
*/
public static void main(String []args) {
System.out.println("Hello World");
}
}
然后我们就可以使用 javadoc
命令输出该类的文档
[penglei@tech.souyunku.com java9]$ javadoc -d . JavaDocTester.java
正在加载源文件JavaDocTester.java...
正在构造 Javadoc 信息...
javadoc: 警告 - 未指定要使用的 HTML 版本。
默认值当前为 HTML 4.01,但在未来发行版中
将更改为 HTML5。要隐藏此警告,请使用 -html4
或 -html5 选项,指定要由此 doclet 生成的、
在文档注释中使用的 HTML 版本。
标准 Doclet 版本 10.0.2
正在构建所有程序包和类的树...
正在生成./JavaDocTester.html...
正在生成./package-frame.html...
正在生成./package-summary.html...
正在生成./package-tree.html...
正在生成./constant-values.html...
正在构建所有程序包和类的索引...
正在生成./overview-tree.html...
正在生成./index-all.html...
正在生成./deprecated-list.html...
正在构建所有类的索引...
正在生成./allclasses-frame.html...
正在生成./allclasses-frame.html...
正在生成./allclasses-noframe.html...
正在生成./allclasses-noframe.html...
正在生成./index.html...
正在生成./help-doc.html...
1 个警告
可以看到 javadoc
默认使用的还是 html 4.0.1
版本
然后我们可以在浏览器中代开生成的 index.html
文件,注意图片中的粉色框框
如果我们翻看源码,就可以看到 HTML 4.0.1
的文档声明了
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
新的 JavaDoc 文档格式
从上面的输出结果中还可以看出,可以使用 -html5
选项指定输出结果为 HTML 5
,我们来试一试吧
[penglei@tech.souyunku.com java9]$ javadoc -html5 -d . JavaDocTester.java
正在加载源文件JavaDocTester.java...
正在构造 Javadoc 信息...
标准 Doclet 版本 10.0.2
正在构建所有程序包和类的树...
正在生成./JavaDocTester.html...
正在生成./package-frame.html...
正在生成./package-summary.html...
正在生成./package-tree.html...
正在生成./constant-values.html...
正在构建所有程序包和类的索引...
正在生成./overview-tree.html...
正在生成./index-all.html...
正在生成./deprecated-list.html...
正在构建所有类的索引...
正在生成./allclasses-frame.html...
正在生成./allclasses-frame.html...
正在生成./allclasses-noframe.html...
正在生成./allclasses-noframe.html...
正在生成./index.html...
正在生成./help-doc.html...
当使用 HTML 5 格式时,输出日志都变少了…
然后打开当前目录下的 index.html
,可以发现页面长的还是一样
但如果查看页面的源码,就会发现已经使用了 HTML 5 文档类型声明了
<!DOCTYPE HTML>
新添加的 JavaDoc 搜索功能
想必你已经注意到我特意在途中标示出的粉色框框了,这个搜索功能还是蛮实用了,比如我们输入 main
就会就会出现搜索提示功能
因为我们只有一个文件,一个类,所以搜索结果没啥大用
不过,你可以在官方的 Java 9 文档中用一用,还是蛮能节省时间的
干货推荐
附录:Java 9 新特性 系列文章
- 一、Java 9 新特性 – 介绍
- 二、Java 9 新特性 – 特性简介
- 三、Java 9 新特性 – 环境配置
- 四、Java 9 新特性 – 模块化
- 五、Java 9 新特性 – REPL ( JShell )
- 六、Java 9 新特性 – 改进 JavaDocs
- 七、Java 9 新特性 – 多版本共存 JAR
- 八、Java 9 新特性 – 集合不可变实例工厂方法
- 九、Java 9 新特性 – 接口 ( interface ) 的私有方法
- 十、Java 9 新特性 – 改进进程管理 API
- 十一、Java 9 新特性 – 增强流 ( Stream ) API
- 十二、Java 9 新特性 – try-with-resources 语句
- 十三、Java 9 新特性 – 增强 @Deprecated 注解
- 十四、Java 9 新特性 – 内部类的方块操作符
- 十五、Java 9 新特性 – Option 类
- 十六、Java 9 新特性 – 多分辨率图像 API
- 十七、Java 9 新特性 – CompletableFuture API ( 上 )
- 十八、Java 9 新特性 – CompletableFuture API ( 中 )
- 十九、Java 9 新特性 – CompletableFuture API ( 下 )
- 二十、Java 9 新特性 – 其它特性