Java| Javadoc生成Java帮助文档
一.JavaDoc介紹
Javadoc是Sun公司提供的一個技術(shù),它從程序源代碼中抽取類、方法、成員等注釋形成一個和源代碼配套的API幫助文檔。也就是說,只要在編寫程序時以一套特定的標(biāo)簽作注釋,在程序編寫完成后,通過Javadoc就可以同時形成程序的開發(fā)文檔。
比如官網(wǎng)JDK1.7API
二.注釋的種類
/*** 注釋種類3** @param args*/public static void main(String[] args) {// 注釋種類1/* 注釋種類2 */}注釋的功能解釋:
// 第1種注釋,雙斜線,不支持換行/* 第2種注釋,支持換行,這里面的都是注釋 *//*** 第3種注釋,在斜線后,有兩個星號,這樣的注釋,便是Javadoc文檔注釋*/ /** Javadoc文檔注釋也可以不換行 */本文中主要是講解第三種,也就是文檔注釋.
三.Tag功能介紹
| @author | 用于class和interface的聲明中,表示作者 | @author 作者名 |
| @param | 用于構(gòu)造函數(shù)及函數(shù)的參數(shù)說明 | @param 參數(shù)名 參數(shù)說明 |
| @return | 表示函數(shù)的返回值 | @return 函數(shù)返回值說明 |
| @throws | 標(biāo)識出方法可能拋出的異常 | @throws RuntimeException 描述 |
| @exception | 和@throws一樣,官網(wǎng)推薦用@throws | |
| @see | 鏈接目標(biāo),@see Tag只能頂格寫 | @see 其他類 |
| {@link} | 和@see類似,但可以放在任意位置 | {@link 其他類名} |
| @since | 引入新功能 | @since 2.0,2.0版本開始加入的新功能 |
| @version | 指定類的版本 | @version info |
| @deprecated | 類或成員deprecated | |
| {@value} | 顯示常量的值,該常量必須是final屬性 | |
| {@code } | ||
| {@docRoot} | 文檔的根路徑 |
@author
默認(rèn)Javadoc是不顯示@author Tag的內(nèi)容的。
如果打算在Javadoc里顯示@author的內(nèi)容,可以在生成Javadoc的時候,添加參數(shù) -tag author:a:”Author:”
@return
當(dāng)Tag @return用在返回值為void的函數(shù)上或者構(gòu)造函數(shù),@return會被忽略
@see
@see “string”
如果在@see后面添加一段文本字符串,則不會生成連接。Javadoc 工具會根據(jù)文本前的雙引號來進行識別
例如:
@see “The Java Programming Language”
生成的結(jié)果就是
@see label
跳轉(zhuǎn)到相應(yīng)連接
@see package.class#member label
跳轉(zhuǎn)到相應(yīng)class的成員或class
@see 的查找
如果在class內(nèi),可以不加包和類的限定名
/*** @see #field* @see #method(Type, Type,...)*/在當(dāng)前package或引用的package內(nèi)查找
/*** @see Class#field* @see Class#method(Type, Type,...)*/在其他package內(nèi)查找
/*** @see package.Class#field* @see package.Class#method(Type, Type,...)* @see package.Class*/@see Tag內(nèi)的名稱,的查找次序為:
1. 當(dāng)前class或interface 2. enclosing classes 3. 父類或父接口 4. 當(dāng)前包 5. 按import次序,查找import的包,class和interface{@value}
{@value} 在生成的doc里,會用變量的真實值替換{@value}出現(xiàn)的地方。有兩種用法:
一種是沒有參數(shù),只能用在final修飾的成員變量上
/*** The value of this constant is {@value}.*/ public static final String SCRIPT_START = "<script>"使用參數(shù),{@value package.class#field}。在生成的Javadoc內(nèi),會顯示參數(shù)的值.
/**** if equal {@value #TEST_STATIC}*/public boolean isTestString(String str){}{@code}
在這個Tag里,可以直接顯示很多html里需要轉(zhuǎn)義的字符,比如 <> &,同時,文本的字體也會以code的字體顯示
四.生成Java幫助文檔
代碼例子:
/*** TestJavaDoc類說明** @author Yves He**/ public class TestJavaDoc {/*** 方法的簡述: 測試testJavaDoc* <p>* 方法詳細(xì)說明第一行:測試JavaDoc詳細(xì)說明1<br>* 方法詳細(xì)說明第二行:測試JavaDoc詳細(xì)說明2<br>** @param message* 方法參數(shù)說明* @return 返回值說明* @throws Exception* 異常說明*/public static String testJavaDoc(String message) throws Exception {return "hello " + message;}}1.命令行方式生成Java幫助文檔
用法: javadoc [options] [packagenames] [sourcefiles] [@files]-overview <file> 從 HTML 文件讀取概覽文檔 -public 僅顯示 public 類和成員 -protected 顯示 protected/public 類和成員 (默認(rèn)值) -package 顯示 package/protected/public 類和成員 -private 顯示所有類和成員 -help 顯示命令行選項并退出 -doclet <class> 通過替代 doclet 生成輸出 -docletpath <path> 指定查找 doclet 類文件的位置 -sourcepath <pathlist> 指定查找源文件的位置 -classpath <pathlist> 指定查找用戶類文件的位置 -cp <pathlist> 指定查找用戶類文件的位置 -exclude <pkglist> 指定要排除的程序包列表 -subpackages <subpkglist> 指定要遞歸加載的子程序包 -breakiterator 計算帶有 BreakIterator 的第一個語句 -bootclasspath <pathlist> 覆蓋由引導(dǎo)類加載器所加載的 類文件的位置-source <release> 提供與指定發(fā)行版的源兼容性 -extdirs <dirlist> 覆蓋所安裝擴展的位置 -verbose 輸出有關(guān) Javadoc 正在執(zhí)行的操作的信息 -locale <name> 要使用的區(qū)域設(shè)置, 例如 en_US 或 en_US_WIN -encoding <name> 源文件編碼名稱 -quiet 不顯示狀態(tài)消息 -J<flag> 直接將 <flag> 傳遞到運行時系統(tǒng) -X 輸出非標(biāo)準(zhǔn)選項的提要 通過標(biāo)準(zhǔn) doclet 提供:-d <directory> 輸出文件的目標(biāo)目錄 -use 創(chuàng)建類和程序包用法頁面 -version 包含 @version 段 -author 包含 @author 段 -docfilessubdirs 遞歸復(fù)制文檔文件子目錄 -splitindex 將索引分為每個字母對應(yīng)一個文件 -windowtitle <text> 文檔的瀏覽器窗口標(biāo)題 -doctitle <html-code> 包含概覽頁面的標(biāo)題 -header <html-code> 包含每個頁面的頁眉文本 -footer <html-code> 包含每個頁面的頁腳文本 -top <html-code> 包含每個頁面的頂部文本 -bottom <html-code> 包含每個頁面的底部文本 -link <url> 創(chuàng)建指向位于 <url> 的 javadoc 輸出的鏈接 -linkoffline <url> <url2> 利用位于 <url2> 的程序包列表鏈接至位于 <url> 的文檔 -excludedocfilessubdir <name1>:.. 排除具有給定名稱的所有文檔文件子目錄。 -group <name> <p1>:<p2>.. 在概覽頁面中, 將指定的程序包分組 -nocomment 不生成說明和標(biāo)記, 只生成聲明。 -nodeprecated 不包含 @deprecated 信息 -noqualifier <name1>:<name2>:... 輸出中不包括指定限定符的列表。 -nosince 不包含 @since 信息 -notimestamp 不包含隱藏時間戳 -nodeprecatedlist 不生成已過時的列表 -notree 不生成類分層結(jié)構(gòu) -noindex 不生成索引 -nohelp 不生成幫助鏈接 -nonavbar 不生成導(dǎo)航欄 -serialwarn 生成有關(guān) @serial 標(biāo)記的警告 -tag <name>:<locations>:<header> 指定單個參數(shù)定制標(biāo)記 -taglet 要注冊的 Taglet 的全限定名稱 -tagletpath Taglet 的路徑 -charset <charset> 用于跨平臺查看生成的文檔的字符集。 -helpfile <file> 包含幫助鏈接所鏈接到的文件 -linksource 以 HTML 格式生成源文件 -sourcetab <tab length> 指定源中每個制表符占據(jù)的空格數(shù) -keywords 使程序包, 類和成員信息附帶 HTML 元標(biāo)記 -stylesheetfile <path> 用于更改生成文檔的樣式的文件 -docencoding <name> 指定輸出的字符編碼
javadoc -public -sourcepath D:\workspace\eclipse\javadoc\src -subpackages cn.com.yves -encoding utf-8 -charset utf-8 -d D:\javadocout2.Eclipse中生成Java幫助文檔
選中項目–>export–>javadoc
1)選擇項目那些權(quán)限的內(nèi)容輸出到幫助文檔.
2) 選擇需要提取的注解.
3)根據(jù)項目的編碼設(shè)置指定的編碼和字符集.
UTF8項目的設(shè)置: -encoding utf-8 -charset utf-8
JavaDoc幫助文檔效果:
參考鏈接:
http://blog.csdn.net/shuanghujushi/article/details/73433648
http://blog.csdn.net/skylake_/article/details/65631591
http://blog.chinaunix.net/uid-725717-id-2060139.html
官網(wǎng):
https://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#encoding
http://www.oracle.com/technetwork/articles/java/index-137868.html
總結(jié)
以上是生活随笔為你收集整理的Java| Javadoc生成Java帮助文档的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【移植驱动到Linux3.4.2内核之一
- 下一篇: python重点知识 钻石_python