Read Sean

          Read me, read Sean.
          posts - 508, comments - 655, trackbacks - 9, articles - 4

          前一篇隨筆提到目前計劃系統學習Python和Groovy,有什么比實際使用更好的學習途徑呢?1年多以前,我曾經在另一篇隨筆提到:當ANT不夠用時,可以用JRuby+Antwrap,這是一個可行的方案,并且經過了長期實戰的考驗。不過Groovy可以做的更好(感興趣的朋友可以和Antwrap版對照一下):

          ?1?#!/usr/bin/env?groovy
          ?2?
          ?3?ant?=?new?AntBuilder()
          ?4?root?=?":pserver:cvsuser:password@10.10.10.1/cvsrepo/SampleProduct"
          ?5?
          ?6?def?checkout()?{
          ?7?????ant.cvs(cvsroot:root,command:"checkout?-A","package":".",dest:"cvsoriginal",compressionlevel:"9")
          ?8?}
          ?9?
          10?def?update()?{
          11?????ant.cvs(cvsroot:root,command:"update?-A?-d","package":".",dest:"cvsoriginal",compressionlevel:"9")
          12?}
          13?
          14?def?compile(project)?{
          15?????ant.javac(srcdir:"cvsoriginal/$project/src",destdir:"cvsoriginal/$project",target:"1.5",encoding:"GBK")
          16?????ant.copy(todir:"cvsoriginal/$project")?{
          17?????????fileset(dir:"cvsoriginal/$project/src")?{
          18?????????????exclude(name:"**/*.java")
          19?????????}
          20?????}
          21?????ant.jar(destfile:"build/$project.jar",basedir:"cvsoriginal/$project",manifest:"MANIFEST.MF")?{
          22?????????exclude(name:"src/**")
          23?????}
          24?}
          25?
          26?//?to?actually?call?your?target
          27?checkout?root
          28?

          代碼更緊湊,與Java的集成更無縫。只需要簡單的培訓,有Java基礎的朋友就能上手,不必再額外學習和習慣Ruby的語法,不用gem install,也不用去monkey-patch個別文件來集成和打包Ant、Antwrap和JRuby,只需要一個groovy-all-x.x.x.jar加上自己的腳本即可輕松搞定。

          [2008-08-26 19:25:00 更新] 經過實際環境測試,原來JRuby(1.1)+Antwrap需要24分鐘完成的構建,改用Groovy(1.5.6)后,僅需要16分鐘,對于需要經常處理構建的項目和產品來說,這8分鐘還是相當可觀的。


          主站蜘蛛池模板: 遵义市| 凤台县| 唐河县| 盘锦市| 辉南县| 福海县| 泽普县| 金溪县| 上思县| 尖扎县| 永春县| 沈丘县| 阿拉善右旗| 曲松县| 裕民县| 镇坪县| 同仁县| 墨脱县| 连平县| 济南市| 玉环县| 文成县| 灯塔市| 游戏| 织金县| 宁强县| 钦州市| 绍兴市| 渭源县| 横峰县| 苗栗县| 福建省| 清河县| 台江县| 博客| 平远县| 萨嘎县| 化隆| 寻乌县| 夏邑县| 祁阳县|