<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    李順利
    隨筆-50  評(píng)論-170  文章-0  trackbacks-0

    Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié)

                                                                                                           V1.0

    目錄

    關(guān)鍵詞... 1

    前言... 1

    預(yù)處理... 1

    第一種:使用jd2chm來生成chm幫助文檔... 4

    使用原版jd2chm_exe_03轉(zhuǎn)換成chm.. 4

    生成英文版本如下... 4

    生成中文版本如下... 5

    使用網(wǎng)上高手改進(jìn)的版本jd2chm_0.34轉(zhuǎn)換成chm.. 7

    生成英文版本如下... 7

    生成中文版本如下... 8

    第二種:使用javadoc2chm來生成chm幫助文檔... 11

    生成英文版本如下... 11

    生成中文版本如下... 12

    第三種:使用javadoc2help來生成chm幫助文檔... 18

    生成英文版本如下... 18

    生成中文版本如下... 18

    第四種:使用google code里面的javadoc2chm項(xiàng)目構(gòu)建... 20

    生成英文版本如下... 20

    生成中文版本如下... 22

    總結(jié)... 23

     

     

                                  李順利

    [201016]

     

     

     


    關(guān)鍵詞

    Javadoc chm 轉(zhuǎn)換 jd2chm javadoc2chm javadoc2help Javadoc2chm 中文亂碼 李順利

     

    前言

             朋友,當(dāng)您在一個(gè)項(xiàng)目完成后,是不是需要把你的源碼打包并且把注釋打成Javadoc交給客戶,Eclipse或者MyEclipse自動(dòng)打成的Javadoc文檔都是基于網(wǎng)頁格式的,打開是很方便,不過真的用的時(shí)候,搜索每個(gè)方法或者什么的就很麻煩了,而chm幫助文檔格式不但文件小,查閱都很方便,所以網(wǎng)上就出現(xiàn)了很多把Javadoc轉(zhuǎn)換為chm格式的幫助文檔的軟件/工具或者方法。

             自己最近需要真的需要這個(gè)方面的需求,查閱了網(wǎng)上很多方法,發(fā)現(xiàn)很多都是寫的很不詳細(xì),對(duì)于我這種剛接觸的很是不清楚,經(jīng)過我的學(xué)習(xí)和理解,現(xiàn)提供從網(wǎng)上總結(jié)的Javadoc轉(zhuǎn)換chm幫助文檔的四種方法,詳細(xì)提供各個(gè)轉(zhuǎn)換的步驟供大家學(xué)習(xí),并且提供英文版本和中文版本Javadoc轉(zhuǎn)換過程中出現(xiàn)的問題,特別是中文的時(shí)候出現(xiàn)的亂碼現(xiàn)象,也提供一些解決方案

    預(yù)處理

             轉(zhuǎn)換之前需要了解的是chm是微軟公司發(fā)布的一種幫助文檔格式,所有,要使用下面的方法轉(zhuǎn)換,請(qǐng)先安裝HTML Help Workshop(后面簡(jiǎn)稱為HHW)(實(shí)際上后面的一些處理有些都是在上面操作的)

     http://msdn.microsoft.com/en-us/library/ms669985.aspx,下載完畢后就是安裝了,很簡(jiǎn)單。

           還有一個(gè)很重要的問題,就是如何把項(xiàng)目打成Javadoc,這有人應(yīng)該會(huì)說,很簡(jiǎn)單啊,就是使用Eclipse或者MyeclipseExport功能,是的,這是可以,但是有些小的方面還是需要我們強(qiáng)烈注意的

    第一個(gè)問題就是Java代碼的格式問題

           Java代碼編寫的使用有的使用GBK,有的使用UTF-8,這個(gè)時(shí)候就會(huì)有區(qū)別。使用GBK編碼的時(shí)候生成Javadoc文檔時(shí)沒有太大問題的,但是,要是整個(gè)項(xiàng)目的默認(rèn)編碼格式是UTF-8的話,就會(huì)報(bào)警告:編碼 GBK 的不可映射字符

    clip_image002

    根本沒有成功生成Javadoc文檔,如何解決?解決方案就是在生成Javadoc的時(shí)候?qū)?/span>VM options進(jìn)行編碼設(shè)置-encoding UTF-8 -charset UTF-8,設(shè)置如下:

    clip_image004

     

    第二個(gè)問題就是如何把生成的Javadoc文檔生成英語版本

             這個(gè)問題有的時(shí)候?yàn)榱私鉀Q中文亂碼是很重要的,我們生成英文版本的Javadoc(僅對(duì)生成的Javadoc框架的語言做限制,并沒有對(duì)注釋內(nèi)容的格式做限制,也就是說這個(gè)時(shí)候注釋還是可以是中文的)。

             解決方案也是在VM options中加入-locale en_US,但是此時(shí)注意的是,如果把-locale en_US設(shè)置在后面的話,會(huì)報(bào)一個(gè)錯(cuò)誤,大致是-locale en_US javadoc命令必須是在最前面,所有,正確的寫法就是-locale en_US -encoding UTF-8 -charset UTF-8(整合上面),默認(rèn)如果不寫-locale的話,安裝locale語言來進(jìn)行設(shè)置,當(dāng)然我們中國人就是中文的了。(當(dāng)然如果你工程默認(rèn)編碼是GBK而且您想生成中文的幫助文檔的話,這寫都可以不要,使用默認(rèn)即可)

    設(shè)置截圖如下:

    clip_image006

             做好了上面的工作,現(xiàn)在就請(qǐng)大家看我是如何轉(zhuǎn)換成chm幫助文檔的。

    (做完這些,請(qǐng)生成中文和英文各一份Javadoc文檔,供后面測(cè)試使用)

     


    第一種:使用jd2chm來生成chm幫助文檔

    使用原版jd2chm_exe_03轉(zhuǎn)換成chm

    原版jd2chm_exe_03需要通過官網(wǎng)下載http://www.burgaud.com/jd2chm.html不過現(xiàn)在我這是不可以訪問的,只能通過代理來訪問下載工具。(不要擔(dān)心,最后我會(huì)把所有的工具打包供大家下載)。下載解壓后就是一個(gè)jd2chm.exe文件,怎么使用?很簡(jiǎn)單,就是把這個(gè)文件放到需要生成Javadoc的目錄下,必須保證同一個(gè)目錄下一定要有index.html,不然不可生成,單擊,或者在cmd命令中打開exe,填寫project nametitle即可。

    生成英文版本如下

    clip_image008

    clip_image010

    生成中文版本如下

     

    clip_image012

    clip_image014

    上面整個(gè)生成都很OK,中英文支持都非常的好,唯一遺憾的是,工具生成的時(shí)候加了About…和沒有順便生成.HHP, .HHK, .HHC文件,有的時(shí)候About我們并不需要或者換成其他的,這個(gè)時(shí)候可以使用其他的chm編輯器或者HHW 反編譯修改后重新編譯生成,具體操作請(qǐng)大家嘗試。


    使用網(wǎng)上高手改進(jìn)的版本jd2chm_0.34轉(zhuǎn)換成chm

    網(wǎng)上一個(gè)高手修改了一些很多有用的地方,如果想了解的話,請(qǐng)移步http://download.csdn.net/source/1024968查看并下載。

    生成英文版本如下

    clip_image016

    請(qǐng)注意最后一個(gè)一定要選擇y,意思就是在原Javadoc文檔里修改一點(diǎn)東西(就我看,就是加了一個(gè)about.html),是否同意?不同意如何生成?

    clip_image018

    clip_image020

    生成中文版本如下

     

    clip_image022

    clip_image024

    比原版本的好處是不需在放到Javadoc目錄下了,還可以使用最新的微軟雅黑字體,而且能夠生成hhchhkhhp文件,方便我們使用HHW進(jìn)行編輯。遺憾還是about并且有點(diǎn)破壞了原Javadoc文檔(加了一個(gè)about.html),這個(gè)時(shí)候通過HHW工具很方便的進(jìn)行編輯(有了hhchhkhhp文件)。修改一份給大家看看,打開hhp文件,并打開About…文件,修改部分內(nèi)容(就是一個(gè)html語言寫的網(wǎng)頁了)

    修改完成后,保存并編譯

    clip_image026

     

    clip_image027

    對(duì)比下面修改后的About

    clip_image028

     


    第二種:使用javadoc2chm來生成chm幫助文檔

    先下載工具javadoc2chm-1.1.0.7.msi,搜索下載(后面會(huì)提供),下載完成并安裝,會(huì)在開始菜單里生成程序快捷方式。

    生成英文版本如下

    clip_image029

    clip_image031

    生成中文版本如下

    clip_image032clip_image034

     

    界面操作,很方便,英文支持非常好,中文有一處亂碼(上面目錄第一層),幾乎很完美,遺憾是Title后面加了-Generated by javadoc2chm和中文有點(diǎn)亂碼,沒有生成hhchhkhhp文件(實(shí)際上在轉(zhuǎn)換的時(shí)候是生成的這三個(gè)文件,后面被刪除了,如果耍點(diǎn)小聰明的話,可以在生成過程中復(fù)制一份,如果速度快的話,會(huì)提示文件已經(jīng)被刪除,是否重試,這個(gè)時(shí)候再轉(zhuǎn)換,看文件生成后點(diǎn)重試即可得到這三個(gè)文件,不要反編譯多好),這種方法建議使用英文版本。

    自己修改了一份中文版本的轉(zhuǎn)換,現(xiàn)提供部分步驟

     

    clip_image036

    clip_image038clip_image040

    clip_image041

    clip_image043

     

    看看修改后的效果吧

    第一次打開的首頁

    clip_image045

    個(gè)性化設(shè)置:加入Blog,請(qǐng)大家有空多踩踩我的博客:http://blog.sina.com.cn/usc3l

    clip_image047

     

     

    上面的兩種方法也是我極力推薦大家使用的,下面的兩種方法僅供學(xué)習(xí),里面有很多問題,中文亂碼什么的,都會(huì)出現(xiàn)。

     


    第三種:使用javadoc2help來生成chm幫助文檔

    官方網(wǎng)站http://javadoc2help.sourceforge.net/,下載解壓即可,里面最重要的就是lib目錄下面的Javadoc2Help.jar,注意我們就是使用這個(gè)jar文件進(jìn)行生成。官網(wǎng)上也提供了如何使用。

    生成英文版本如下

    Cmd命令進(jìn)入jar文件目錄,寫下面的命令回車

    java -jar Javadoc2Help.jar -chm -src f:\docs\api_en_US -dest f:\docs\api_en_US2

    (具體路徑請(qǐng)根據(jù)需要修改)

    clip_image049

    注意:-dest后面的目錄請(qǐng)不要寫原目錄,不然生成不了chm并且覆蓋了原目錄文件。

    clip_image051

     

    生成中文版本如下

    Cmd命令進(jìn)入jar文件目錄,寫下面的命令回車

    java -jar Javadoc2Help.jar -chm -src f:\docs\api_zh_CN -dest f:\docs\api_zh_CN2

    (具體路徑請(qǐng)根據(jù)需要修改)

    clip_image053

    注意:-dest后面的目錄請(qǐng)不要寫原目錄,不然生成不了chm并且覆蓋了原目錄文件。

    clip_image055

     

    基本能夠完成轉(zhuǎn)換,但是不了建立索引,不能設(shè)置Title和文件名,對(duì)中文嚴(yán)重不支持不管是英文版本還是中文版本的chm都出現(xiàn)了中文亂碼現(xiàn)象,還有chm文件就是便于查詢,竟然不能生產(chǎn)索引,建議不使用。

     


    第四種:使用google code里面的javadoc2chm項(xiàng)目構(gòu)建

    請(qǐng)參考http://code.google.com/p/javadoc2chm/下載rubyjavadoc2chm-0.1.zip等必要步驟。

    Google code上頁介紹了如何使用,解壓壓縮包。使用這個(gè),就必須先安裝rubyHHW

    生成英文版本如下

    Cmd命令進(jìn)入javadoc2chm目錄,寫下面的命令

    ruby createhhp.rb api_en_US f:\docs\api_en_US回車

    "C:\Program Files\HTML Help Workshop\hhc.exe" api_en_US.hhp回車

    (注意C:\Program Files\HTML Help Workshop\hhc.exeHHW默認(rèn)安裝路徑,如果不是請(qǐng)自行修改)

    clip_image057

    生成的chm文件在解壓的包的文件夾里:

    clip_image059

    clip_image061

    打開后是上面的這樣子,具體的原因不清楚,不過解決的方法就是把Javadoc文件夾和ruby命令的文件夾不要放在同一個(gè)盤內(nèi),不在同一個(gè)盤里就會(huì)使用絕對(duì)路徑。重修生成,但是這種方法也并不適合,當(dāng)我們把原Javadoc文檔的文件夾刪除或者移動(dòng)了,這個(gè)時(shí)候也會(huì)出現(xiàn)上面的情況。具體的我打開了hhp文件查看了一下,應(yīng)該是這種方法使用的是覺得路徑,而并沒有把文件進(jìn)行包裝在生成。(要查看下面截圖的效果,請(qǐng)把docs文件夾保留)

    命令

    ruby createhhp.rb api_en_US e:\docs\api_en_US

    "C:\Program Files\HTML Help Workshop\hhc.exe" api_en_US.hhp

    clip_image063

     

    生成中文版本如下

    Cmd命令進(jìn)入javadoc2chm目錄,寫下面的命令

    ruby createhhp.rb 中文幫助文檔 e:\docs\api_zh_CN回車

    "C:\Program Files\HTML Help Workshop\hhc.exe" 中文幫助文檔.hhp回車

    (注意C:\Program Files\HTML Help Workshop\hhc.exeHHW默認(rèn)安裝路徑,如果不是請(qǐng)自行修改)

    clip_image065clip_image067clip_image069

    不能設(shè)置Title和中文的Title時(shí)候亂碼,操作麻煩,還要安裝ruby輔助軟件。

     

     

     

     

    總結(jié)

    上面的一些不完美的地方,都可以使用HTML Help Workshop進(jìn)行改善。實(shí)際上也是因?yàn)榇舜螜C(jī)遇,讓我學(xué)習(xí)了HTML Help Workshop的操作,以后制作chm文檔就很方便了。

    上面方法通過參考網(wǎng)上的操作總結(jié)自己親自實(shí)際而成,需要探討的請(qǐng)聯(lián)系QQ506817493

     

     

    順利提高所有工具和制作成果的文件下載(不包括ruby輔助軟件,自行下載)

    Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié).rar

    clip_image070

     

     

     

    順利寫于201016



    博客中的一些下載已經(jīng)放到了百度云了,請(qǐng)根據(jù)需要下載。【點(diǎn)我去百度云下載】

    最后弱弱地說一下,如果可以的話,轉(zhuǎn)載請(qǐng)?zhí)峁┏鎏? ),謝謝。
    posted on 2010-01-07 21:26 李順利 閱讀(13185) 評(píng)論(17)  編輯  收藏

    評(píng)論:
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2010-01-07 22:43 | 匿名
    博主真是好人啊,總結(jié)的這么好,學(xué)些  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2010-01-07 23:09 | 在線詞典
    不錯(cuò),很好。  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2010-01-08 09:55 | feenn
    看了一下說一點(diǎn)感受:其實(shí)chm的javadoc文檔最重要的一點(diǎn)是可以使用索引來快速查找某一個(gè)類或者方法的文檔,不過貌似沒有在博主文章中的圖片上體現(xiàn)出來。
    另外推薦使用FAR HTML來制作,網(wǎng)上有很多綠色的版本。這款軟件在文檔制作方面比微軟自家的強(qiáng)很多,推薦博主使用。
    我平時(shí)是使用自己寫的一個(gè)程序來生成目錄、索引和工程文件的,然后使用FAR HTML簡(jiǎn)單編輯一下就可以生成一個(gè)很好用的chm,推薦博主有時(shí)間的話可以自己寫一個(gè)。
      回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2010-01-08 09:57 | 李順利
    實(shí)際上博文里也已經(jīng)體現(xiàn)了,chm文檔的作用就是方便查找,當(dāng)然需要生成索引了,如果方便的話,可以下載后面的文檔,里面有生成好的chm幫助文檔,大家可以看看,絕對(duì)方便。
    還是很感謝您的建議,謝謝。  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2010-01-08 09:58 | 李順利
    @feenn
    實(shí)際上博文里也已經(jīng)體現(xiàn)了,chm文檔的作用就是方便查找,當(dāng)然需要生成索引了,如果方便的話,可以下載后面的文檔,里面有生成好的chm幫助文檔,大家可以看看,絕對(duì)方便。
    還是很感謝您的建議,謝謝。  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2011-07-14 21:43 | 小雨
    樓主好人啊,太感謝了  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2011-09-07 21:58 | 1927105
    不想留姓名都不行,呵呵,謝謝lz分享  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2011-10-18 11:11 | 王麗雪
    好貼啊,多謝幫忙,按樓主的方法終于成功了。  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2011-11-10 21:15 | 李順利
    @Moncler Coats
    cool... welcome and thanks for your support  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2012-12-14 18:04 | avi9111
    寫這么詳細(xì),必須支持下,還有工具下載  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2012-12-17 11:13 | avi9111
    試用了一下,博主的方法還是不錯(cuò)的
    不過我還是想問個(gè)問題
    有沒有java的文檔引擎?

    javadoc-低級(jí),如果你只想查某個(gè)方法的用法,而不是類或者整個(gè)框架,你是找不到的
    chm-中級(jí),可以搜索類,方法名可以搜索么?
    csdn-高級(jí),從05年開始,csdn已經(jīng)支持全文索引的,還可以搜索支持實(shí)例,還整合到了visual studio里面了(理論上可以,實(shí)際上有問題,csdn網(wǎng)站已經(jīng)夠好用了)

    到底java這個(gè)鬼東西,有沒人或者團(tuán)隊(duì)做文檔引擎的?  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2012-12-17 11:19 | 李順利
    @avi9111
    不知道 GroovyHelp 能否滿足你的要求, ps. GroovyHelp 我也不太熟悉,只是知道有那么一個(gè)東西在那兒。

    javadoc的原意應(yīng)該就是你必須知道做這件事情需要那么一個(gè)類,而這個(gè)類的方法你不是很清楚,那么就查查,或者這個(gè)方法中的一些特殊情況(異常什么的)你不是很清楚,這個(gè)時(shí)候你也可以看看。

    我相信,如果你都知道方法(名)了,類應(yīng)該不難查到。  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié)[未登錄] 2012-12-27 14:42 | andy
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2013-03-19 22:01 | tripod2k
    非常有用,太贊了!  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié)[未登錄] 2013-05-28 14:47 | hello
    不得不贊..  回復(fù)  更多評(píng)論
      
    # re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2013-08-13 11:30 | testok
    學(xué)習(xí)了,贊一個(gè)  回復(fù)  更多評(píng)論
      
    # 如果直接通過javadoc發(fā)布成html,可以實(shí)現(xiàn)搜索功能嗎?//re: Javadoc轉(zhuǎn)換chm幫助文檔的四種方法總結(jié) 2015-04-08 19:53 | Eric Zhan
    如果直接通過javadoc發(fā)布成html,可以實(shí)現(xiàn)搜索功能嗎?  回復(fù)  更多評(píng)論
      

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲AV日韩精品久久久久久| 亚洲av中文无码乱人伦在线r▽ | 视频免费在线观看| 1000部夫妻午夜免费| 国产精品久免费的黄网站| 国产亚洲人成无码网在线观看| 亚洲影视一区二区| 免费国产a理论片| 91在线老王精品免费播放| 四虎影视精品永久免费| 亚洲制服中文字幕第一区| 国产综合成人亚洲区| 4虎永免费最新永久免费地址| 亚洲国产精品无码久久九九| 亚洲综合无码一区二区三区| 一级看片免费视频囗交| 国产片AV片永久免费观看| 亚洲无线码在线一区观看| 亚洲日韩精品无码专区加勒比☆| 爱丫爱丫影院在线观看免费| 日韩在线免费播放| 18亚洲男同志videos网站| 一个人看的www免费高清| 最新猫咪www免费人成| 亚洲a一级免费视频| 牛牛在线精品观看免费正| 免费人成视频在线| 亚洲成色在线影院| 成人一级免费视频| 成人在线免费观看| 亚洲精品亚洲人成在线麻豆| aa级毛片毛片免费观看久| 国产福利免费在线观看| 亚洲国产成人久久99精品| 波多野结衣免费一区视频| 亚洲日韩中文在线精品第一| 亚洲欧美日韩综合久久久久| 天天影院成人免费观看| 亚洲视频在线一区| 中国一级特黄高清免费的大片中国一级黄色片 | 久久久精品国产亚洲成人满18免费网站 |