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分鐘還是相當可觀的。


          主站蜘蛛池模板: 赫章县| 海城市| 青浦区| 石首市| 蒙山县| 福鼎市| 图木舒克市| 和平县| 库尔勒市| 遂昌县| 铜梁县| 福海县| 房产| 佛学| 思南县| 合山市| 永顺县| 犍为县| 广东省| 友谊县| 西贡区| 雅江县| 繁昌县| 高平市| 崇信县| 蕉岭县| 漠河县| 金堂县| 玉山县| 刚察县| 庐江县| 迭部县| 库伦旗| 武隆县| 奇台县| 酒泉市| 探索| 玛沁县| 高邑县| 玉屏| SHOW|