隨筆-26  評論-13  文章-46  trackbacks-0

          使用Ant運行本地程序(轉)

          ??????????????????????????????????????

          .使用Ant運行windows的批處理文件

          ?????? 要在Ant內運行一個外部程序,應使用<exec>任務.它允許你執行下列操作:

          l???????? 指定程序名和要傳入的參數.

          l???????? 命名運行目錄.

          l???????? 使用failonerror標志來控制當應用程序失敗時是否停止構建.

          l???????? 指定一個最大程序持續時間,時間超過則中止程序.任務在這時被認為是失敗,但是至少構建會中止,而不是掛起,這對于自動構建是至關重要的.

          l???????? 將輸出存到一個文件或特性.

          l???????? 指定java調用本地程序時需要預先設定的環境變量.

          ?????? 下面來看一個例子:

          批處理文件:

          Test.bat

          P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>@echo off

          echo Hello > test.txt

          build.xml

          SPAN lang=EN-US style="FONT-SIZE: 10pt; BACKGROUND: white; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-highlight: white">

          <?xml version="1.0"?>

          <projectname="batch"default="extract"basedir=".">

          ??? <targetname="extract">

          ?????? <execexecutable ="cmd">

          ?????????? <argline="/c a.bat"/>?????

          ?????? </exec>?

          ??? </target>

          </project>

          ?????? 使用executable元素標記指定使用的命令,具體用法可以在命令行下面輸入help cmd查看.如果你希望在運行批處理發生錯誤時中止構建需要設定failonerror="on".加入你的外部程序在某個時刻掛起,也許是在與遠程站點對話,而你不希望構建永遠被掛起,Ant提供了timeout這個屬性,他是一個以毫秒為單位的數字.下面看一下如何使用Ant來運行tomcat.

          ?????? 啟動tomcat需要兩個環境變量CATALINA_HOME, JAVA_HOME,如果你在環境變量中已經設定,Ant中就不需要進行處理,如果沒有需要使用<env>屬性來設定,你也可以使用<env>屬性覆蓋你以前的環境變量.

          SPAN lang=EN-US style="FONT-SIZE: 10pt; BACKGROUND: white; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-highlight: white">

          <?xml version="1.0"?>

          <projectname="batch"default="tomcat-start"basedir=".">

          ??? <propertyname="tomcat.dir"value="C:\Tomcat5"></property>

          ???

          ??? <targetname="tomcat-start">

          ??? <execdir="${tomcat.dir}/bin"executable="cmd">

          ?????? <envkey="CATALINA_HOME"path="${tomcat.dir}"/>

          ?????? <argvalue="/C startup.bat"/>

          ??? </exec>

          ??? </target>

          </project>

          2.使用Ant運行shell文件

          ????? 由于windowsXPcmd默認沒有安裝ps,bash等命令,所以我們需要借助的三方的軟件來實現這個功能,這里使用cgywin,cgywinbin目錄加到環境變量的Path里面(下面使用Ant運行cvs也會用到).

          SPAN lang=EN-US style="FONT-SIZE: 10pt; BACKGROUND: white; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-highlight: white">

          <?xml version="1.0"?>

          <projectname="batch"default="shell"basedir=".">

          ??? <propertyname="tomcat.dir"value="C:\Tomcat5"></property>

          ???

          ??? <targetname="shell">

          ??? <execdir="${tomcat.dir}/bin"executable="bash">

          ?????? <envkey="CATALINA_HOME"path="${tomcat.dir}"/>

          ?????? <argvalue="startup.sh"/>

          ??? </exec>

          ??? </target>

          </project>

          3.使用Ant運行cvs

          ?????? Ant內置cvs屬性,可以很方便的使用cvs:

          SPAN lang=EN-US style="FONT-SIZE: 10pt; BACKGROUND: white; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-highlight: white">

          <?xml version="1.0"?>

          <projectname="batch"default="shell"basedir=".">

          ??? <propertyname="cvs.root"value="..."></property>

          ???

          ??? <targetname="cvs">

          ?????? <cvscvsroot="cvs.root"command="checkout ../.."/>

          ??? </target>

          </project>

          如果你的Documents and Settings中有.cvspass文件,那么可以不用設定cvsroot,Ant會自動尋找.

          posted on 2006-05-08 17:24 似水流年 閱讀(1467) 評論(0)  編輯  收藏 所屬分類: Ant

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 云南省| 武城县| 巢湖市| 七台河市| 郯城县| 卢氏县| 定南县| 温泉县| 抚州市| 文安县| 闽侯县| 黄骅市| 饶河县| 公安县| 离岛区| 油尖旺区| 西丰县| 姜堰市| 甘南县| 富裕县| 吉林省| 辽阳市| 依兰县| 兰西县| 南汇区| 开鲁县| 宁波市| 灵石县| 海晏县| 冕宁县| 天门市| 砀山县| 河东区| 昭通市| 常山县| 吉水县| 渭源县| 黎平县| 许昌市| 城步| 忻城县|