六、Java 9 新特性 – 改进 JavaDocs
大约 3 分钟Java
一直以来,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@www.hotmindshare.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@www.hotmindshare.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 文档中用一用,还是蛮能节省时间的