[J2SE5中的javadoc.exe的命令行可选参数多达五十余个,其复杂性可想而知,是不是看着头都大了呢?但通常情况下,我们不想那么麻烦!
最近想学习一下swt的相关内容,于是就到
http://www.eclipse.org/swt下载了最新的swt包。可惜包里只有源码,没有api帮助文档。如果要学习的话,少了帮助文档哪能行,于是就用javadoc命令自己制作了一个。具体操作如下:
1.准备工作。
将下载到的swt-3.5.2-win32-win32-x86.zip里的src.zip经两次解压到本地目录。如成功解压后的目录结构为:D:\Downloads\swt-3.5.2-win32-win32-x86\src。
2.在上述目录下新建文本文件:package.txt,列出所有的包名。
//package.txt的内容如下:
org.eclipse.swt
org.eclipse.swt.accessibility
org.eclipse.swt.awt
org.eclipse.swt.browser
org.eclipse.swt.custom
org.eclipse.swt.dnd
org.eclipse.swt.events
org.eclipse.swt.graphics
org.eclipse.swt.internal
org.eclipse.swt.internal.gdip
org.eclipse.swt.internal.image
org.eclipse.swt.internal.mozilla
org.eclipse.swt.internal.mozilla.init
org.eclipse.swt.internal.ole.win32
org.eclipse.swt.internal.opengl.win32
org.eclipse.swt.internal.theme
org.eclipse.swt.internal.win32
org.eclipse.swt.layout
org.eclipse.swt.ole.win32
org.eclipse.swt.opengl
org.eclipse.swt.printing
org.eclipse.swt.program
org.eclipse.swt.widgets
3.打开命令行窗口,输入命令生成api文档。
转到目录:D:\Downloads\swt-3.5.2-win32-win32-x86\src,输入如下命令生成文档。
javadoc -d api @package.txt
注:api表示帮助文档的存放目录名,@package.txt表示以文件的形式传入包名。
附录1:javadoc命令语法。
在命令行输入javadoc回车就会出现如下的帮助信息:
javadoc用法:javadoc [选项] [软件包名称] [源文件] [@file]
-overview 读取 HTML 文件的概述文档
-public 仅显示公共类和成员 //带有public修饰符
-protected 显示受保护/公共类和成员(默认) //带有protected、public修饰符
-package 显示软件包/受保护/公共类和成员 //不带修饰符,或带有protected、public修饰符
-private 显示所有类和成员 //不带修饰符,或带有任何修饰符
-help 显示命令行选项并退出
-doclet 通过替代 doclet 生成输出
-docletpath 指定查找 doclet 类文件的位置
-sourcepath 指定查找源文件的位置
-classpath 指定查找用户类文件的位置
-exclude 指定要排除的软件包的列表
-subpackages 指定要递归装入的子软件包
-breakiterator 使用 BreakIterator 计算第 1 句
-bootclasspath 覆盖引导类加载器所装入的类文件的位置
-source 提供与指定版本的源兼容性
-extdirs 覆盖安装的扩展目录的位置
-verbose 输出有关 Javadoc 正在执行的操作的消息
-locale 要使用的语言环境,例如 en_US 或 en_US_WIN
-encoding 源文件编码名称
-quiet 不显示状态消息
-J 直接将 传递给运行时系统
通过标准 doclet 提供:
-d 输出文件的目标目录
-use 创建类和包用法页面
-version 包含 @version 段
-author 包含 @author 段
-docfilessubdirs 递归复制文档文件子目录
-splitindex 将索引分为每个字母对应一个文件
-windowtitle 文档的浏览器窗口标题
-doctitle 包含概述页面的标题
-header 包含每个页面的页眉文本
-footer 包含每个页面的页脚文本
-top 包含每个页面的顶部文本
-bottom 包含每个页面的底部文本
-link 创建指向位于 的 javadoc 输出的链接
-linkoffline 利用位于 的包列表链接至位于 的文档
-excludedocfilessubdir :..排除具有给定名称的所有文档文件子目录。
-group :..在概述页面中,将指定的包分组
-nocomment 不生成描述和标记,只生成声明。
-nodeprecated 不包含 @deprecated 信息
-noqualifier ::...输出中不包括指定限定符的列表。
-nosince 不包含 @since 信息
-notimestamp 不包含隐藏时间戳
-nodeprecatedlist 不生成已过时的列表
-notree 不生成类分层结构
-noindex 不生成索引
-nohelp 不生成帮助链接
-nonavbar 不生成导航栏
-serialwarn 生成有关 @serial 标记的警告
-tag :: 指定单个参数自定义标记
-taglet 要注册的 Taglet 的全限定名称
-tagletpath Taglet 的路径
-charset 用于跨平台查看生成的文档的字符集。
-helpfile 包含帮助链接所链接到的文件
-linksource 以 HTML 格式生成源文件
-sourcetab 指定源中每个制表符占据的空格数
-keywords 使包、类和成员信息附带 HTML 元标记
-stylesheetfile 用于更改生成文档的样式的文件
-docencoding 输出编码名称
附录2:常用命令举例。
javadoc -d api org/eclipse/swt/SWT.java //处理单个源文件
javadoc -d api org.eclipse.swt //处理单个包
javadoc -d api org.eclipse.swt org.eclipse.swt.widgets //处理多个包,如果处理的包较少,可以采用直接输入的方法
javadoc -private -d api @package.txt //处理多个包。生成最完整的帮助文档,包括带有private修饰符的属性和方法。
注:本文制作api的方法,适用于所有java开源项目,只要有源码就可以。
最后,bs一下那些在CSDN下利用生成的SWT帮助文档赚取积分的人们,为什么不把制作方法教给正在苦苦寻找的朋友们呢?
[使用javadoc命令制作帮助文档(API)]