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

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

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

    莊周夢蝶

    生活、程序、未來
       :: 首頁 ::  ::  :: 聚合  :: 管理

    Clojure世界:API文檔生成

    Posted on 2012-03-21 22:24 dennis 閱讀(4241) 評論(0)  編輯  收藏 所屬分類: Clojure

        繼續Clojure世界之旅,介紹下我今天的探索成果,使用clojure生成clojure項目的API文檔。在java里,我們是利用javadoc生成API文檔,各種build工具都提供了集成,例如maven和ant都提供了javadoc插件或者task。在Clojure世界里,同樣有一系列工具幫助你從源碼中自動化生成API文檔。今天主要介紹三個工具。不過我不會介紹怎么在clojure里寫doc,具體怎么做請看一些開源項目,或者直接看clojure.core的源碼。

        首先是codox,使用相當簡單,我們這里都假設你使用Leiningen作為構建工具,在project.clj里添加codox依賴:
      :dev-dependencies    [[codox "0.5.0"]]

        解下執行lein doc命令即可生成文檔,生成的文檔放在doc目錄,在瀏覽器里打開index.html即可觀察生成的文檔。我給clojure-control生成的codox文檔可以看這個鏈接,效果還是不錯的。

        第二個要介紹的工具是marginalia,使用方法類似codox,首先還是添加依賴:
    :dev-dependencies [lein-marginalia "0.7.0"]
       
        執行lein deps處理依賴關系,然后執行lein marg命令即可在docs目錄生成文檔,與codox不同的是marginalia只生成一個html文件,沒有帶js和css,但是效果也不錯,可以看我給clojure-control生成的marg文檔鏈接marginalia生成的文檔說明和源碼左右對照,很利于閱讀源碼。

       最后要介紹的就是Clojure.org自己在使用的autodoc,如果你喜歡clojure.org上的API文檔格式可以采用這個工具。并且autodoc可以跟github pages結合起來,生成完整的項目文檔并展示在github上。例如以clojure-control為例來介紹整個過程。首先你需要配置你的github pages,參照這個鏈接
    http://pages.github.com/

        第一步,仍然是在project.clj添加依賴:
    :dev-dependencies [[lein-autodoc "0.9.0"]]
           第二步,在你的.gitignore里忽略autodoc目錄:
    autodoc/**
           將這些更改提交到github上,接下來在你的項目目錄clone一份項目源碼到<project>/autodoc目錄:
     git clone git@github.com:<user name>/<project name>.git autodoc
           進入autodoc目錄,執行下列命令創建一個gh-pages分支:
     $ cd autodoc
     $ git symbolic-ref HEAD refs/heads/gh-pages
     $ rm .git/index
     $ git clean -fdx
     $ cd ..
         回到項目根目錄后,執行lein autodoc命令在autodoc目錄生成文檔:
    lein autodoc
         接下來將生成的文檔推送到github分支上:
     $cd autodoc 
     $ git add -A
     $ git commit -m"Documentation update"
     $ git push origin gh-pages
        等上幾分鐘,讓github渲染你的文檔,最終的效果看這個鏈接 http://killme2008.github.com/clojure-control     
        autodoc和marginalia都支持maven,具體使用請看他們的文檔。
    主站蜘蛛池模板: av午夜福利一片免费看久久| 中文字幕精品三区无码亚洲| 女人张腿给男人桶视频免费版| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 亚洲av中文无码乱人伦在线咪咕 | 亚洲黄色免费在线观看| 一级毛片免费观看不卡的| 午夜亚洲www湿好大| 久热免费在线视频| 亚洲男人第一av网站| 最近新韩国日本免费观看| 亚洲毛片无码专区亚洲乱| 黄页免费的网站勿入免费直接进入| 亚洲精品在线视频| 麻豆狠色伊人亚洲综合网站| 青青青国产在线观看免费网站| 亚洲免费福利在线视频| 国产麻豆剧传媒精品国产免费| 亚洲伊人久久大香线蕉| 好紧我太爽了视频免费国产| 亚洲精品视频久久| 免费做爰猛烈吃奶摸视频在线观看| 亚洲欧好州第一的日产suv| 亚洲成aⅴ人片久青草影院| 国产在线国偷精品免费看| 爽爽日本在线视频免费| 日韩在线观看免费| 久久精品亚洲一区二区| 69式国产真人免费视频| 国产精品亚洲精品日韩电影| 影音先锋在线免费观看| 思思久久99热免费精品6| 久久精品国产亚洲AV麻豆王友容| 少妇高潮太爽了在线观看免费| 亚洲乱码av中文一区二区| 亚洲午夜成人精品电影在线观看| 国产精品亚洲AV三区| 韩国18福利视频免费观看| 久久精品成人免费国产片小草| 亚洲A∨精品一区二区三区| 日韩视频免费在线观看|