ant.xml文件

来源:互联网 发布:立项依据怎么写 知乎 编辑:程序博客网 时间:2024/04/24 13:03

<?xml version="1.0" encoding="UTF-8"?>
<project name="工程名" basedir="." default="initTarget">
 <description>ant文件描述</description>
 <!--***************************************************************-->
 <!--***************************************************************-->
 <!--***************************************************************-->
 <!--*****************************************************************************************************************************************-->
 <!--**********************************************************注意事项***********************************************************************-->
 <!--*****************************************************************************************************************************************-->
 <!--1.CMS中通过ant调用pom.xml,对于maven仓库中不存在的本地jar包,需要添加denpendency和compilerplugin,maven仓库下载失败的jar包需要手动拷贝至.m2文件夹中,
 如用到jre下面的jsse.jar,jce.jar等包,如何无法获取到,可手动拷贝至Java_Home/lib目录下,然后作如下配置,且路径必须是反斜杆
  <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                    <encoding>GBK</encoding>
                    <optimize>true</optimize>
                    <debug>false</debug>
                    <showDeprecation>false</showDeprecation>
                    <showWarnings>false</showWarnings>
                    <compilerArguments>
                        <verbose />
                        <bootclasspath>${java.home}\lib\rt.jar;${java.home}\lib\jce.jar;${java.home}\lib\jsse.jar</bootclasspath>
                    </compilerArguments>
                </configuration>
            </plugin>
  本地第三方包可如下配置,id是jar包名,版本可随意
  <dependency>
            <groupId>SwetakeQRCode</groupId>
            <artifactId>SwetakeQRCode</artifactId>
            <version>1.0.0</version>
        </dependency>
 -->
 <!--2.MSBuild需要添加至环境变量或使用全路径-->
 <!--3.subversion使用1.7.2版本,更具需要对项目升级svn upgrade-->
 <!--4.maven出现内存溢出,需要设置mvn.bat的内存大小set MAVEN_OPTS= -Xms128m -Xmx512m-->
 <!--MsBuild需要指定.Net Framework 3.5版本参数:toolsversion:3.5-->
 <!--
 -->
 <!--*****************************************************************************************************************************************-->
 <!--**********************************************************注意事项***********************************************************************-->
 <!--*****************************************************************************************************************************************-->
 
 
 <taskdef resource="net/sf/antcontrib/antlib.xml"/>
 
 <tstamp>
  <format property="build.time" pattern="yyyy-MM-dd HH-mm-ss" />
 </tstamp>
 
 <tstamp>
  <format property="build.date" pattern="yyyyMMdd" />
 </tstamp>
 
 <target name="initTarget">
  
  <!--*****************************Ant的一些用法*****************************
  ******************************判断文件或目录是否存在的语法********************************
  <property name="directory_path" value="/Intel/Logs"/> 
  <condition property="directory_exist" value="true" else="false"> 
   <available property="isAvailable" type="dir" file="${directory_path}"/> 
  </condition> 
  <echo message="目录是否存在:${directory_exist}" />
  
  <property name="file_path" value="/Intel/Logs/IntelCPHS.log"/> 
  <condition property="file_exist" value="true" else="false"> 
   <available property="isAvailable" type="file" file="${file_path}"/> 
  </condition> 
  <echo message="文件是否存在:${file_exist}" />
  
  *****************************bat调用ant,ant执行java类,怎样传递参数的*****************************
  在bat文件里这样写:
  call ant -D参数1="XXX" -D参数2="XXX",当然了,你的xml文件名字得是build.xml,否则你就得这样写:
  call ant -f xml的名字 -D参数1="XXX" -D参数2="XXX";

  然后在build.xml文件里用${参数1},${参数2}取得参数,在xml里调用java时再通过arg传给Java,如:
  <java fork="true" classname="a">
    <arg value="${参数1}"/>
    <arg value="${参数2}"/>  
    <classpath>
    <path refid="classpath.pointbase" />
    </classpath>
  </java>
  *****************************删除当前文件夹下的某一类文件和空的目录*****************************
  <delete includeEmptyDirs="true">
      <fileset dir="." includes="**/*.java"/>
  </delete>
  -->
  <echo message="Debug:Execution Path::==${Workspace}\BaseiVMS9600V1.1" />
  <echo message="Debug:BaseDir::==${basedir}" />
  
  <!--指定ant安装目录-->
  <path id="ant.contrib.lib"> 
   <fileset dir="D:/apache-ant-1.9.2/lib"> 
    <include name="**/*jar" /> 
   </fileset> 
  </path>
  
  <!--引用ant第三方包,用于正则表达式等高级语法,且必须放在这些高级语法之前引用-->
   <taskdef resource="net/sf/antcontrib/antcontrib.properties"> 
     <classpath> 
    <path refid="ant.contrib.lib" /> 
     </classpath> 
   </taskdef>
  
 
  <property name="version" value="${Version}"/><!--外部参数,版本-->
  <property name="company" value="${Company}"/><!--外部参数,分公司-->
  <property name="product1" value="9600"/><!--产品线缩写-->
  <property name="sharepath" value="${SharePath}"/><!--外部参数,共享路径-->
  <property name="tvmcpath" value="${TvmcPath}"/><!--外部参数,电视墙路径-->
  
  <property name="module" value="${Module}"/><!--外部参数,所选模块-->
  
  <property environment="env"/>
  <!--<delete dir="${basedir}/revision.txt"/>-->
  <property name="IsCmdBld" value="C:\Program Files (x86)\InstallShield\2013\System\IsCmdBld.exe" />
  <property name="MsBuild" value="C:\Windows\Microsoft.NET\Framework\v3.5\MsBuild.exe" />
  <property name="WarningLevel" value="WarningLevel=0" />
  
  <property name="Install.dir" value="${basedir}\common\Setup" />
  <condition property="hasInstall" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${Install.dir}"/> 
  </condition>
  <if> 
   <equals arg1="${hasInstall}" arg2="0"/> 
   <then> 
      <echo message="ERROR::Install目录${Install.dir}不存在,新建"></echo> 
      <mkdir dir="${Install.dir}"/>
   </then>
   <else> 
     <echo message="Install目录${Install.dir}存在,直接使用"></echo> 
   </else>    
  </if>
  
  <property name="script.dir" value="D:\jenkins\script" /><!--各种脚本存放路径-->
  
  <echo message="每次先清空上一次打包的成果物目录" />
  <!--会删除文件夹及其下所有文件-->
  <delete dir="${Install.dir}/Client_Install"/>
  <delete dir="${Install.dir}/Server_Install"/>
  <delete dir="${Install.dir}/tvmc_Install"/>
  <delete dir="${Install.dir}/CMS_Install"/>
  <delete dir="${Install.dir}/Ocx_Install"/>
  <mkdir dir="${Install.dir}/Client_Install"/>
  <mkdir dir="${Install.dir}/Server_Install"/>
  <mkdir dir="${Install.dir}/CMS_Install"/>
  <mkdir dir="${Install.dir}/Ocx_Install"/>
  <mkdir dir="${Install.dir}/tvmc_Install"/>
  
  <property name="JobName" value="ECH-iVMS9600-Base-v1.1-Full" />
  <mkdir dir="D:\jenkins\workspace\${JobName}\BaseiVMS9600V1.1-成果物"/>
  <property name="Result.dir" value="D:\jenkins\workspace\${JobName}\BaseiVMS9600V1.1-成果物" /><!--成果物目录,下面必须以Server和CMS分类-->
  
  
  <echo message="+=========================================================================================================+" /> 
        <echo message="+===============将成果物路径下的cmsocx.exe拷贝到ocx文件夹下,并将成果物路径下的cmsocx.exe删除=========+" />
        <echo message="+=================================================================================================================+" />
  <delete dir="${Result.dir}/ocx"/>
  <mkdir dir="${Result.dir}/ocx"/>
  <copy todir="${Result.dir}/ocx" file="${Result.dir}/Server/cmsocx.exe"/>
  <delete file="${Result.dir}/Server/cmsocx.exe"/>
   <echo message="+=========================================================================================================+" /> 
        <echo message="+===============将成果物路径下的cmsocx.exe拷贝到ocx文件夹下,并将成果物路径下的cmsocx.exe删除完成=====+" />
        <echo message="+=================================================================================================================+" />
  
  
  <echo message="+=========================================================================================================+" /> 
        <echo message="+===============将电视墙成果物(路径具体到svn压缩包的详细路径)下载到指定文件夹下===============================+" />
        <echo message="+=================================================================================================================+" />
  
  <delete dir="${Result.dir}/tvmc"/>
  <mkdir dir="${Result.dir}/tvmc"/>
  
     <exec dir="${script.dir}" executable="javac ">
   <arg line='-encoding GBK SvnCheckoutTvmcBase.java'/>
  </exec>
  <exec dir="${script.dir}" executable="java ">
   <arg line='SvnCheckoutTvmcBase'/>
   <arg line='"${tvmcpath}"'/><!--电视墙成果物压缩包的详细路径-->
   <arg line='"${Result.dir}/tvmc"'/><!--将电视墙成果物压缩包下载到该路径下-->
  </exec>
  <echo message="+=============================================================================================================+" /> 
        <echo message="+===============将电视墙成果物(路径具体到svn压缩包的详细路径)下载到指定文件夹下,下载完成==================+" />
        <echo message="+==============================================================================================================+" />
  
  
  <!--<delete dir="D:\jenkins\workspace\${JobName}\${Ipm}-成果物"/>-->
  
  
  <!--公用组件的目录-->
  <property name="StaticComponent.dir" value="D:\jenkins\Install\StaticComponent" />
  <!--<property name="Tomcat" value="apache-tomcat-6.0.35_x64" />-->
  <property name="Tomcat" value="apache-tomcat-7.0.59" />
  
  <!--成果物目录-->
  <property name="Client_Install.dir" value="${Install.dir}\Client_Install" />
  <property name="Server_Install.dir" value="${Install.dir}\Server_Install" />
  <property name="Tvmc_Install.dir" value="${Install.dir}\tvmc_Install" />
  <property name="CMS_Install.dir" value="${Install.dir}\CMS_Install" />
  <property name="Ocx_Install.dir" value="${Install.dir}\Ocx_Install" />
  
  <!--打包工程的文件夹-->
  <property name="Client_ISEng.dir" value="${Install.dir}\Client" />
  <property name="Server_ISEng.dir" value="${Install.dir}\Server" />
  <property name="CMS_ISEng.dir" value="${Install.dir}\CMS" />
  <property name="OCX_ISEng.dir" value="${Install.dir}\OCX" />
  <property name="Tvmc_ISEng.dir" value="${Install.dir}\tvmc" />
  
  <!--打包工程的ism文件-->
  <property name="Client_ISM_Name" value="${Install.dir}\Client.ism" />
  <property name="Server_ISM_Name" value="${Install.dir}\Server.ism" />
  <property name="CMS_ISM_Name" value="${Install.dir}\CMS.ism" />
  <property name="OCX_ISM_Name" value="${Install.dir}\OCX.ism" />
  <property name="Tvmc_ISM_Name" value="${Install.dir}\tvmc.ism" />
  
  <!--存放打包后安装文件的目录-->
  <property name="IPM_Name" value="${Ipm}" /><!--外部参数,单号-->
  
  <property name="Package.dir" value="D:\jenkins\workspace\${JobName}\BaseiVMS9600V1.1-安装包" />
  <propertyregex property="IPM_Folder" input="${IPM_Name}" regexp="(.*)_(.*)_(.*)" select="\3"/><!--Stub-->
  <echo message="单号:${Ipm}"></echo>
  <property name="Package_IPM.dir" value="${Package.dir}\${Ipm}" />
  
  
  
  
  <!--License编译模块目录及是否存在条件-->
  <property name="License.dir" value="${basedir}/License" />
  <condition property="License" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${License.dir}"/> 
  </condition>
  <if> 
   <equals arg1="${License}" arg2="0"/> 
   <then> 
      <echo message="ERROR::License目录${License.dir}不存在"></echo> 
   </then>
   <else> 
     <echo message="License目录${License.dir}存在"></echo> 
   </else>    
  </if> 
  
  <!--Common编译模块目录及是否存在条件-->
  <property name="Common.dir" value="${basedir}/common" />
  <condition property="Common" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${Common.dir}"/> 
  </condition>
  <if> 
   <equals arg1="${Common}" arg2="0"/> 
   <then> 
      <echo message="ERROR::Common目录${Common.dir}不存在"></echo> 
   </then>
   <else> 
     <echo message="Common目录${Common.dir}存在"></echo> 
   </else>    
  </if> 
  
  <!--Server编译模块目录及是否存在条件-->
  <property name="SvrDir" value="${basedir}/Svr"/>
  <property name="ServerDir" value="${basedir}/Server"/>
  <condition property="SvrDirExist" value="true" else="false"> 
   <available property="isAvailable" type="dir" file="${SvrDir}"/> 
  </condition>
  <condition property="ServerDirExist" value="true" else="false"> 
   <available property="isAvailable" type="dir" file="${ServerDir}"/> 
  </condition> 
  <echo message="判断Server/Svr目录是否存在" />
  
  <if> 
   <equals arg1="${ServerDirExist}" arg2="true"/> 
   <then> 
    <property name="Server" value="1"/>
    <property name="Server.dir" value="${basedir}/Server"/>
    <echo >Server目录存在,用Server目录</echo> 
   </then>
  <elseif>
   <equals arg1="${SvrDirExist}" arg2="true"/> 
   <then> 
      <property name="Server" value="1"/>
      <property name="Server.dir" value="${basedir}/Svr"/>
      <echo >Server目录不存在,用Svr目录</echo> 
   </then>
  </elseif>
   <else> 
     <property name="Server" value="0"/>
     <echo >ERROR::Server/Svr目录都不存在</echo> 
   </else>    
  </if> 
  
  <property name="ams.dir" value="${Server.dir}/ams" />
  <property name="bms.dir" value="${Server.dir}/bms" />
  <property name="nms.dir" value="${Server.dir}/nms" />
  <property name="pms.dir" value="${Server.dir}/pms" />
  <property name="vrb.dir" value="${Server.dir}/vrb" />
  <condition property="ams" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${ams.dir}"/> 
  </condition>
  <condition property="bms" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${bms.dir}"/> 
  </condition>
  <condition property="nms" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${nms.dir}"/> 
  </condition>
  <condition property="pms" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${pms.dir}"/> 
  </condition>
  <condition property="vrb" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${vrb.dir}"/> 
  </condition>
  <if> 
   <equals arg1="${ams}" arg2="0"/> 
   <then> 
      <echo message="ERROR::ams目录${ams.dir}不存在"></echo> 
   </then>
   <else> 
     <echo message="ams目录${ams.dir}存在"></echo> 
   </else>    
  </if> 
  <if> 
   <equals arg1="${bms}" arg2="0"/> 
   <then> 
      <echo message="ERROR::bms目录${bms.dir}不存在"></echo> 
   </then>  
   <else> 
     <echo message="bms目录${bms.dir}存在"></echo> 
   </else>
  </if>
  <if> 
   <equals arg1="${nms}" arg2="0"/> 
   <then> 
      <echo message="ERROR::nms目录${nms.dir}不存在"></echo> 
   </then>
   <else> 
     <echo message="nms目录${nms.dir}存在"></echo> 
   </else>   
  </if>
  <if> 
   <equals arg1="${pms}" arg2="0"/> 
   <then> 
      <echo message="ERROR::pms目录${pms.dir}不存在"></echo> 
   </then>  
   <else> 
     <echo message="pms目录${pms.dir}存在"></echo> 
   </else> 
  </if>
  <if> 
   <equals arg1="${vrb}" arg2="0"/> 
   <then> 
      <echo message="ERROR::vrb目录${vrb.dir}不存在"></echo> 
   </then> 
   <else> 
     <echo message="vrb目录${vrb.dir}存在"></echo> 
   </else> 
  </if>
  
  <!--Client编译模块目录及是否存在条件-->
  <property name="Client.dir" value="${basedir}/Client"/>
  <condition property="Client" value="1" else="0">  <!--如果存在值为1-->
   <available property="isAvailable" type="dir" file="${Client.dir}"/> 
  </condition>
  <if> 
   <equals arg1="${Client}" arg2="0"/> 
   <then> 
      <echo message="ERROR::Client目录${Client.dir}不存在"></echo> 
   </then> 
   <else> 
     <echo message="Client目录${Client.dir}存在"></echo> 
   </else> 
  </if>
  
  <property name="csc.dir" value="${Client.dir}/csc" />
  <condition property="csc" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${csc.dir}"/> 
  </condition>
  <if> 
   <equals arg1="${csc}" arg2="0"/> 
   <then> 
      <echo message="ERROR::csc目录${csc.dir}不存在"></echo> 
   </then> 
   <else> 
     <echo message="csc目录${csc.dir}存在"></echo> 
   </else> 
  </if>
  
  <property name="ControlClient.dir" value="${Client.dir}/csc" />
  <condition property="ControlClient" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${ControlClient.dir}"/> 
  </condition>
  <if> 
   <equals arg1="${ControlClient}" arg2="0"/> 
   <then> 
      <echo message="ERROR::ControlClient目录${ControlClient.dir}不存在"></echo> 
   </then> 
   <else> 
     <echo message="ControlClient目录${ControlClient.dir}存在"></echo> 
   </else> 
  </if>
  
  <!--CMS编译模块目录及是否存在条件-->
  <property name="CMS.dir" value="${basedir}/CMS"/>
  <condition property="CMS" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${CMS.dir}"/> 
  </condition>
  <if> 
   <equals arg1="${CMS}" arg2="0"/> 
   <then> 
      <echo message="ERROR::CMS目录${CMS.dir}不存在"></echo> 
   </then> 
   <else> 
     <echo message="CMS目录${CMS.dir}存在"></echo> 
   </else> 
  </if>
  
  <!--*******************目录是否存在的条件************************-->
  <condition property="Licensecondition"> 
   <equals arg1="${License}" arg2="1" /> 
  </condition>
  <condition property="Commoncondition"> 
   <equals arg1="${Common}" arg2="1" /> 
  </condition>
  <condition property="Serverscondition"> 
   <equals arg1="${Server}" arg2="1" /> 
  </condition>
  <condition property="Clientscondition"> 
   <equals arg1="${Client}" arg2="1" /> 
  </condition> 
  <condition property="CMSscondition"> 
   <equals arg1="${CMS}" arg2="1" /> 
  </condition>
  
  <echo message="开始进行Ant脚本执行${build.time}" />
  <echo  message="先判定目录是否存在,在存在的条件下,再根据外部bat参数决定是否需要编译,License,Common默认都执行"/>
 
  <echo >开始执行License${build.time}</echo>
  <antcall target="buildLicense"></antcall>
  <echo >开始执行Common${build.time}</echo>
  <antcall target="buildCommon"></antcall>

  <if> 
   <equals arg1="${hasServer}" arg2="1"/> <!--外部参数-->
   <then> 
       <echo >开始执行Server${build.time}</echo>
       <antcall target="makeServer"></antcall>
   </then>
   <else>
    <echo >外部不需要执行Server</echo>
   </else>
  </if>
  <if> 
   <equals arg1="${hasClient}" arg2="1"/>  <!--外部参数-->
   <then> 
       <echo >开始执行Client${build.time}</echo>
       <antcall target="makeClient"></antcall>
   </then>
   <else>
    <echo >外部不需要执行Client</echo>
   </else>
  </if>
  <if> 
   <equals arg1="${hasCMS}" arg2="1"/>  <!--外部参数-->
   <then> 
       <echo >开始执行CMS${build.time}</echo>
       <antcall target="makeCMS"></antcall>
   </then>
   <else>
    <echo >外部不需要执行CMS</echo>
   </else>
  </if>
   <if> 
   <equals arg1="${hasTvmc}" arg2="1"/>  <!--外部参数-->
   <then> 
       <echo >开始执行TVMC${build.time}</echo>
       <antcall target="makeTvmc"></antcall>
   </then>
   <else>
    <echo >外部不需要执行TVMC</echo>
   </else>
  </if>
  
  <!--此处调试使用,运行所有的模块
  <antcall target="buildServer"></antcall>
  <antcall target="buildClient"></antcall>
  <antcall target="buildCMS"></antcall>-->
  <echo message="+=============================================+" />
  <echo message="     跑马拉松阿,终于跑完咯,all tasks are finished here...      " />
  <echo message="+=============================================+" />
 </target>
 <!--*************************************编译打包的各个Target***********************************-->
 
 
 <!--*************************************Common Target Begin***********************************--> 
 <target name="preCommon" if="Commoncondition">
 </target>
 <target name="buildCommon"  depends="preCommon" if="Commoncondition">
  <!--<echo message="+=============================================+" />
  <echo message="          Common 正在编译WarningLevel=${WarningLevel} ........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${Common.dir}/sntp/sntp_server" executable="${MsBuild}" >
   <arg line=' SntpServer.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Common.dir}/sntp/sntp_client" executable="${MsBuild}" >
   <arg line=' SntpClient.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Common.dir}/RecordQueryService/code" executable="${MsBuild}" >
   <arg line=' RecordQuerySevice.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Common.dir}/watchdog" executable="${MsBuild}" >
   <arg line=' ServiceWatchdog.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          Common  编译完成........      " />
  <echo message="+=============================================+" />-->
 </target>
 
 <!--*************************************License Target Begin***********************************-->
 <target name="preLicense"  if="Licensecondition">
 </target>
 <target name="buildLicense"  depends="preLicense" if="Licensecondition">

 </target>

 
 <!-- *************************************服务器Target Begin::源文件所在目录*************************************-->
 <target name="prebuildServer" if="Serverscondition">
  <echo message="处理common等组件到Server_Install" />
  
   
  <if> 
   <equals arg1="${Common}" arg2="1"/> 
   <then> 
  <echo message="+===========================================================+" />
     <echo message="          拷贝sntp_client到Server安装文件路径........      " />
  <echo message="+===========================================================+" />
    <copy todir="${Server_Install.dir}/sntp_client">
     <fileset dir="${Common.dir}/sntp/sntp_client/bin/release">
      <exclude name="**/*.lib" />
      <exclude name="**/*.svn" />
      <!--<exclude name="**/*.pdb" />-->
      <exclude name="**/*.exp" />
      <exclude name="**/*.map" />
     </fileset>
    </copy>
  <echo message="+===========================================================+" />
     <echo message="          拷贝sntp_client到Server安装路径完成........      " />
  <echo message="+===========================================================+" />
     
  <!--<echo message="+=============================================+" />
  <echo message="          sntp_client  正在提交........      " />
  <echo message="+=============================================+" />-->
  
  <!--<exec dir="${Common.dir}/sntp/sntp_client/bin/release" executable="svn " >
   <arg line='ci -m "提交sntp_client(${Common.dir}/sntp/sntp_client/bin/release文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${Common.dir}/sntp/sntp_client/bin/release" executable="svn " >
  <arg line=' update .'/>
  </exec>-->
      
  <!--<echo message="+=============================================+" />
  <echo message="          sntp_client  提交完成........      " />
  <echo message="+=============================================+" />-->
  
  <echo message="+=========================================================+" />
  <echo message="          拷贝watchdog到Server安装文件路径........      " />
  <echo message="+=========================================================+" />
    <copy todir="${Server_Install.dir}">
     <fileset dir="${Common.dir}/watchdog/Release">
      <exclude name="**/*.lib" />
      <exclude name="**/*.svn" />
      <!--<exclude name="**/*.pdb" />-->
      <exclude name="**/*.exp" />
      <exclude name="**/*.map" />
     </fileset>
    </copy>
  <echo message="+=========================================================+" />
  <echo message="          拷贝watchdog到Server安装路径完成........      " />
  <echo message="+=========================================================+" />
  
  <echo message="+=========================================================+" />
  <echo message="          拷贝vc需要的运行环境到Server安装路径....  " />
  <echo message="+=========================================================+" />
  <copy todir="${Server_Install.dir}" file="${StaticComponent.dir}/vcredist_x64.exe"/>
  <copy todir="${Server_Install.dir}" file="${StaticComponent.dir}/vcredist_x86.exe"/>
  <echo message="+=========================================================+" />
  <echo message="          拷贝vc需要的运行环境到Server安装路径,拷贝完成 " />
  <echo message="+=========================================================+" />
  
  
  
  <!--<echo message="+=============================================+" />
  <echo message="          watchdog  正在提交........      " />
  <echo message="+=============================================+" />-->
  
  <!--<exec dir="${Common.dir}/watchdog/Release" executable="svn " >
   <arg line='ci -m "提交watchdog(${Common.dir}/watchdog/Release文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${Common.dir}/watchdog/Release" executable="svn " >
  <arg line=' update .'/>
  </exec>-->
      
  <!--<echo message="+=============================================+" />
  <echo message="          watchdog  提交完成........      " />
  <echo message="+=============================================+" />-->
   </then>
   <else>
    <!--<echo >Sntp_client和watchdog非定制,直接copy成果物</echo> -->
    <!--<copy todir="${Server_Install.dir}">
     <fileset dir="${Result.dir}\sntp_client">
      <include name="*.*"/>
     </fileset>
    </copy> comment:sntp_client在UnZipAndRarUtilCopy中处理
    <copy todir="${Server_Install.dir}">
     <fileset dir="${StaticComponent.dir}\Server\看门狗">
      <include name="*.*"/>
     </fileset>-->
       <!--含中文,需指定编码,且含ant.jar包,需在classpath中指定-->
    <!--<exec dir="${script.dir}" executable="javac ">
     <arg line='-encoding GBK UnZipAndRarUtilCopy.java'/>
    </exec>
    <exec dir="${script.dir}" executable="java ">
     <arg line='UnZipAndRarUtilCopy'/>
     <arg line='"${Result.dir}/Server"'/>--><!--需要解压的成果物文件位置-->
     <!--<arg line='"${Server_Install.dir}"'/>--><!--解压后文件位置-->
    <!--</exec>-->
   </else>
  </if>
 
  
 </target>

 <target name="buildServer" depends="prebuildServer" if="Serverscondition"> 
    
        <echo message="+========================================================================================================+" /> 
        <echo message="+===============开始从基线成果物目录下删除定制和共享定制的成果物压缩包===============================+" />
        <echo message="+=========================================================================================================+" />
     <exec dir="${script.dir}" executable="javac ">
   <arg line='-encoding GBK UnZipAndRarUtilBase9600.java'/>
  </exec>
  <exec dir="${script.dir}" executable="java ">
   <arg line='UnZipAndRarUtilBase9600'/>
   <arg line='"${Result.dir}/Server"'/><!--需要解压的成果物文件位置-->
   <arg line='"${Server_Install.dir}"'/><!--解压后文件位置-->
   <arg line='2'/><!--DEL-->
   <arg line='"${module}"'/>
   <arg line='"0"'/>
  </exec>
  
  <echo message="+===================================================================================================================+" /> 
        <echo message="+===============开始从基线成果物目录下删除定制和共享定制的成果物压缩包,删除完成===============================+" />
        <echo message="+===================================================================================================================+" />
  
  <echo message="+=======================================================================================================+" /> 
        <echo message="+===============将基线成果物目录下的所有压缩包解压至安装目录下用于打包===============================+" />
        <echo message="+=======================================================================================================+" />
  
  <exec dir="${script.dir}" executable="javac ">
   <arg line='-encoding GBK UnZipAndRarUtilBase9600.java'/><!--含中文,需指定编码,且含ant.jar包,需在classpath中指定-->
  </exec>
  <exec dir="${script.dir}" executable="java ">
   <arg line='UnZipAndRarUtilBase9600'/>
   <arg line='"${Result.dir}/Server"'/><!--需要解压的成果物文件位置-->
   <arg line='"${Server_Install.dir}"'/><!--解压后文件位置-->
   <arg line='0'/><!--解压-->
   <arg line='"${module}"'/>
   <arg line='"0"'/>
  </exec>
  
  <echo message="+=======================================================================================================+" /> 
        <echo message="+===============将基线成果物目录下的所有压缩包解压至安装目录下,解压完成===============================+" />
        <echo message="+=======================================================================================================+" />
  

  
     
  <!--<exec dir="${script.dir}" executable="javac ">
   <arg line='-encoding GBK UnZipAndRarUtilCopy.java'/>--><!--含中文,需指定编码,且含ant.jar包,需在classpath中指定-->
  <!--</exec>
  <exec dir="${script.dir}" executable="java ">
   <arg line='UnZipAndRarUtilCopy'/>
   <arg line='"${Result.dir}/Server"'/>--><!--需要解压的成果物文件位置-->
   <!--<arg line='"${Server_Install.dir}"'/>--><!--解压后文件位置-->
   <!--<arg line='1'/>--><!--rename-->
  <!--</exec>-->
  
  <condition property="amsCondition"> 
   <equals arg1="${ams}" arg2="1" /> 
  </condition> 
  <if> 
   <equals arg1="${hasAms}" arg2="1"/> <!--外部参数-->
   <then> 
       <echo >开始执行ams拷贝</echo>
       <antcall target="ams"></antcall>
   </then>
   <else>
    <echo >ams不需要拷贝</echo>
   </else>
  </if>
  
  

  <condition property="bmsCondition"> 
   <equals arg1="${bms}" arg2="1" /> 
  </condition> 
  <if> 
   <equals arg1="${hasBms}" arg2="1"/> <!--外部参数-->
   <then> 
       <echo >开始执行bms拷贝</echo>
       <antcall target="bms"></antcall>
   </then>
   <else>
    <echo >bms不需要拷贝</echo>
   </else>
  </if>
  
  
  <condition property="nmsCondition"> 
   <equals arg1="${nms}" arg2="1" /> 
  </condition> 
  <if> 
   <equals arg1="${hasNms}" arg2="1"/> <!--外部参数-->
   <then> 
       <echo >开始执行nms拷贝</echo>
      <antcall target="nms"></antcall>
   </then>
   <else>
    <echo >nms不需要拷贝</echo>
   </else>
  </if>
  

  <condition property="pmsCondition"> 
   <equals arg1="${pms}" arg2="1" />
  </condition> 
  <if> 
   <equals arg1="${hasPms}" arg2="1"/> <!--外部参数-->
   <then> 
       <echo >开始执行pms拷贝</echo>
      <antcall target="pms"></antcall>
   </then>
   <else>
    <echo >pms不需要拷贝</echo>
   </else>
  </if>
  
  
  
  <condition property="vrbCondition"> 
   <equals arg1="${vrb}" arg2="1" />
  </condition> 
  <if> 
   <equals arg1="${hasVrb}" arg2="1"/> <!--外部参数-->
   <then> 
       <echo >开始执行vrb拷贝</echo>
     <antcall target="vrb"></antcall>
   </then>
   <else>
    <echo >vrb不需要拷贝</echo>
   </else>
  </if>
  
  
  
 </target>

<!-- <target name="writeVersion" depends="buildServer" if="Serverscondition"> 
  <exec dir="${ams.dir}" executable="svn " output="revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="amsRevision" srcFile="revision.txt"/>
  <propertyregex property="ams_revision" input="${amsRevision}" regexp="最后修改的版本: (.*)\r" select="\1"/>
  <propertyregex property="ams_url" input="${amsRevision}" regexp="URL: (.*)\r" select="\1"/>
  <echo file="${Server_Install.dir}/ams/ams.version" append="false">${ams_url}:${ams_revision}</echo>
  
  <exec dir="${bms.dir}" executable="svn " output="revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="bmsRevision" srcFile="revision.txt"/>
  <propertyregex property="bms_revision" input="$bmsRevision}" regexp="最后修改的版本: (.*)\r" select="\1"/>
  <propertyregex property="bms_url" input="${bmsRevision}" regexp="URL: (.*)\r" select="\1"/>
  <echo file="${Server_Install.dir}/bms/bms.version" append="false">${bms_url}:${bms_revision}</echo>
  
  <exec dir="${nms.dir}" executable="svn" output="revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="nmsRevision" srcFile="revision.txt"/>
  <propertyregex property="nms_revision" input="${nmsRevision}" regexp="最后修改的版本: (.*)\r" select="\1"/>
  <propertyregex property="nms_url" input="${nmsRevision}" regexp="URL: (.*)\r" select="\1"/>
  <echo file="${Server_Install.dir}/nms/nms.version" append="false">${nms_url}:${nms_revision}</echo>
  
  <exec dir="${pms.dir}" executable="svn " output="revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="pmsRevision" srcFile="revision.txt"/>
  <propertyregex property="pms_revision" input="${pmsRevision}" regexp="最后修改的版本: (.*)\r" select="\1"/>
  <propertyregex property="pms_url" input="${pmsRevision}" regexp="URL: (.*)\r" select="\1"/>
  <echo file="${Server_Install.dir}/pms/pms.version" append="false">${pms_url}:${pms_revision}</echo>

  <exec dir="${vrb.dir}" executable="svn " output="revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="vrbRevision" srcFile="revision.txt"/>
  <propertyregex property="vrb_revision" input="${vrbRevision}" regexp="最后修改的版本: (.*)\r" select="\1"/>
  <propertyregex property="vrb_url" input="${vrbRevision}" regexp="URL: (.*)\r" select="\1"/>
  <echo file="${Server.dir}/Server_Install/vrb/vrb.version" append="false">${vrb_url}:${vrb_revision}</echo>
 </target> -->

 <target name="makeServer" depends="buildServer" if="Serverscondition"> 
 
      <exec dir="${Common.dir}/watchdog" executable="${MsBuild}" >
   <arg line=' ServiceWatchdog.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
     <echo message="+=============================================+" />
  <echo message="          重命名服务器文件夹........          " />
  <echo message="+=============================================+" />
  
     <exec dir="${script.dir}" executable="javac ">
   <arg line='-encoding GBK UnZipAndRarUtilBase9600.java'/>
  </exec>
  <exec dir="${script.dir}" executable="java ">
   <arg line='UnZipAndRarUtilBase9600'/>
   <arg line='"${Result.dir}/Server"'/><!--需要解压的成果物文件位置-->
   <arg line='"${Server_Install.dir}"'/><!--解压后文件位置-->
   <arg line='1'/><!--rename-->
   <arg line='"${module}"'/>
   <arg line='"0"'/>
  </exec>
  
  <echo message="+=============================================+" />
  <echo message="          重命名服务器文件夹完成........      " />
  <echo message="+=============================================+" />
  
  
  <echo message="+==============================================================+" />
  <echo message="          判断安装目录下各个服务器目录是否存在........      " />
  <echo message="+===============================================================+" />
  <property name="vag.path" value="${Server_Install.dir}/vag" />
  <condition property="vag_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${vag.path}"/> 
  </condition>
  <property name="ams.path" value="${Server_Install.dir}/ams" />
  <condition property="ams_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${ams.path}"/> 
  </condition>
  <property name="bms.path" value="${Server_Install.dir}/bms" />
  <condition property="bms_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${bms.path}"/> 
  </condition>
  <property name="dc.path" value="${Server_Install.dir}/dc" />
  <condition property="dc_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${dc.path}"/> 
  </condition>
  <property name="dms.path" value="${Server_Install.dir}/dms" />
  <condition property="dms_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${dms.path}"/> 
  </condition>
  <property name="kps.path" value="${Server_Install.dir}/kps" />
  <condition property="kps_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${kps.path}"/> 
  </condition>
  <property name="ncg.path" value="${Server_Install.dir}/ncg" />
  <condition property="ncg_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${ncg.path}"/> 
  </condition>
  <property name="nms.path" value="${Server_Install.dir}/nms" />
  <condition property="nms_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${nms.path}"/> 
  </condition>
  <property name="nvrvod.path" value="${Server_Install.dir}/nvrvod" />
  <condition property="nvrvod_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${nvrvod.path}"/> 
  </condition>
  <property name="pcnvr.path" value="${Server_Install.dir}/pcnvr" />
  <condition property="pcnvr_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${pcnvr.path}"/> 
  </condition>
  <property name="pms.path" value="${Server_Install.dir}/pms" />
  <condition property="pms_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${pms.path}"/> 
  </condition>
  <property name="vtdu.path" value="${Server_Install.dir}/vtdu" />
  <condition property="vtdu_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${vtdu.path}"/> 
  </condition>
  <property name="tvms.path" value="${Server_Install.dir}/tvms" />
  <condition property="tvms_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${tvms.path}"/> 
  </condition>
  <property name="vod.path" value="${Server_Install.dir}/vod" />
  <condition property="vod_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${vod.path}"/> 
  </condition>
  <property name="vrb.path" value="${Server_Install.dir}/vrb" />
  <condition property="vrb_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${vrb.path}"/> 
  </condition>
  <property name="vrm.path" value="${Server_Install.dir}/vrm" />
  <condition property="vrm_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${vrm.path}"/> 
  </condition>
  <property name="vtm.path" value="${Server_Install.dir}/vtm" />
  <condition property="vtm_path" value="1" else="0"> 
   <available property="isAvailable" type="dir" file="${vtm.path}"/> 
  </condition>
  
  <if> 
   <equals arg1="${vag_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::vag目录${vag.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="vag::目录${vag.path}存在"></echo> 
   </else>    
  </if> 
  
  <if> 
   <equals arg1="${ams_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::ams目录${ams.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="ams::目录${ams.path}存在"></echo> 
   </else>    
  </if> 
    
  <if> 
   <equals arg1="${bms_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::bms目录${bms.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="bms::目录${bms.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${dc_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::dc目录${dc.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="dc::目录${dc.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${dms_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::dms目录${dms.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="dms::目录${dms.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${kps_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::kps目录${kps.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="kps::目录${kps.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${ncg_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::ncg目录${ncg.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="ncg::目录${ncg.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${nms_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::nms目录${nms.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="nms::目录${nms.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${nvrvod_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::nvrvod目录${nvrvod.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="nvrvod::目录${nvrvod.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${pcnvr_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::pcnvr目录${pcnvr.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="pcnvr::目录${pcnvr.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${pms_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::pms目录${pms.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="pms::目录${pms.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${vtdu_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::vtdu目录${vtdu.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="vtdu::目录${vtdu.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${tvms_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::tvms目录${tvms.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="tvms::目录${tvms.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${vod_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::vod目录${vod.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="vod::目录${vod.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${vrb_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::vrb目录${vrb.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="vrb::目录${vrb.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${vrm_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::vrm目录${vrm.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="vrm::目录${vrm.path}存在"></echo> 
   </else>    
  </if>
  <if> 
   <equals arg1="${vtm_path}" arg2="0"/> 
   <then> 
      <echo message="ERROR::vtm目录${vtm.path}不存在"></echo> 
   </then>
   <else> 
     <echo message="vtm::目录${vtm.path}存在"></echo> 
   </else>    
  </if>
  <echo message="+=======================================================================================================================================================================================================================================================================================================================+" />
  <echo message="          目录是否存在:vag:${vag_path},ams:${ams_path},bms:${bms_path},dc:${dc_path},dms:${dms_path},kps:${kps_path},ncg:${ncg_path},nms:${nms_path},nvrvod:${nvrvod_path},pcnvr:${pcnvr_path},pms:${pms_path},vtdu:${vtdu_path},tvms:${tvms_path},vod:${vod_path},vrb:${vrb_path},vrm:${vrm_path},vtm:${vtm_path}   " />
  <echo message="           (0:表示该目录不存在,1:表示该目录存在)........      " />
  <echo message="+=======================================================================================================================================================================================================================================================================================================================+" />
  
         <exec dir="${script.dir}" executable="javac">
   <arg line='-encoding GBK ReadSvnNumberBase.java'/>
  </exec>
  <exec dir="${script.dir}" executable="java" output="${Result.dir}\revisionNumber.txt">
   <arg line='ReadSvnNumberBase'/>
   <arg line='${Result.dir}\Server'/>
  </exec>
  <loadfile property="Serverrevision" srcFile="${Result.dir}\revisionNumber.txt"/>
  <echo message="+=============================================+" />
  <echo message="               ${Serverrevision}              " />
  <echo message="+=============================================+" />
  <propertyregex property="Server_revision" input="${Serverrevision}" regexp="(.*)maxSvnNumber: (.*)\r" select="\2"/>
  <!--<delete dir="${Server.dir}/revision.txt"/>-->
  <echo message="+=================================================+" />
  <echo message="            Server SVN 版本:${Server_revision}    " />
  <echo message="+=================================================+" />
  
  <copy todir="${Server_Install.dir}" file="${Result.dir}\revisionNumber.txt"/>
  
  <echo message="+=============================================+" />
  <echo message="            Server SVN 版本+1                 " />
  <echo message="+=============================================+" />
  
  <var name="op1" value="${Server_revision}"/> 
        <var name="op2" value="1"/> 
        <var name="op" value="+"/> 
        <math result="result" operand1="${op1}" operation="${op}" operand2="${op2}" datatype="int"/> 
        <echo>${op1} ${op} ${op2} = ${result}</echo> 
  
  <echo message="+=============================================+" />
  <echo message="        Server SVN 版本+1:完成 ${result}         " />
  <echo message="+=============================================+" />

  <echo message="+=============================================+" />
  <echo message="            正在制作Server安装包........      " />
  <echo message="+=============================================+" />
   
  <exec dir="${Install.dir}" executable="${IsCmdBld}" >
    <arg line=' -p "${Server_ISM_Name}" -c COMP'/>
  </exec>
  <rename src="${Server_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/Setup.exe" dest="${Server_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/Server_Setup_${version}_${result}_Build${build.date}.exe"/>
  <echo message="+=============================================+" />
  <echo message="            制作Server安装包成功      " />
  <echo message="+=============================================+" />
  <copy todir="${Package.dir}" file="${Server_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/Server_Setup_${version}_${result}_Build${build.date}.exe"/>
  <delete file="${Server_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/Server_Setup_${version}_${result}_Build${build.date}.exe"/>
  
  <echo message="+=============================================+" />
  <echo message="            将Server安装包上传SVN..      " />
  <echo message="+=============================================+" />
 
  <exec dir="${Package.dir}" executable="svn " >
      <arg line='add Server_Setup_${version}_${result}_Build${build.date}.exe --username 用户名 --password 密码 --non-interactive --trust-server-cert'/>
  </exec>
  <exec dir="${Package.dir}" executable="svn " >
      <arg line='ci -m "提交Server_Setup_${version}_${result}_Build${build.date}.exe安装包" . --username 用户名 --password 密码 --non-interactive --trust-server-cert'/>
  </exec>
  <exec dir="${Package.dir}" executable="svn " >
  <arg line=' update .'/>
  </exec>
  
  <echo message="+=============================================+" />
  <echo message="            Server安装包上传svn完成..     " />
  <echo message="+=============================================+" />
    
  <delete file="${Package.dir}/Server_Setup_${version}_${result}_Build${build.date}.exe"/>
 </target>
 

 <target name="ams" if="amsCondition"> 
  <!--<echo message="+=============================================+" />
  <echo message="          ams  正在编译........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${ams.dir}/code/alarm_simulator" executable="${MsBuild}" >
   <arg line=' alarm_simulator.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${ams.dir}/code" executable="${MsBuild}" >
   <arg line=' alarm.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          ams  编译完成........      " />
  <echo message="+=============================================+" />-->
  <echo message="+=============================================+" />
  <echo message="          ams  正在拷贝........      " />
  <echo message="+=============================================+" />
  <copy todir="${Server_Install.dir}/ams">
   <fileset dir="${ams.dir}/code/bin/vs2008_release">
    <exclude name="**/*.lib" />
    <exclude name="**/*.svn" />
    <!--<exclude name="**/*.pdb" />-->
    <exclude name="**/*.exp" />
    <exclude name="**/*.map" />
   </fileset>
  </copy>
  <echo message="+=============================================+" />
  <echo message="          ams  拷贝完成........      " />
  <echo message="+=============================================+" />
  
  <!--<echo message="+=============================================+" />
  <echo message="          ams  正在提交........      " />
  <echo message="+=============================================+" />-->
  
  <!--<exec dir="${ams.dir}/code/bin/vs2008_release" executable="svn " >
   <arg line='ci -m "提交ams(${ams.dir}/code/bin/vs2008_release文件夹下)自动编译文件" .  />
  </exec>
  <exec dir="${ams.dir}/code/bin/vs2008_release" executable="svn " >
  <arg line=' update .'/>
  </exec>-->
    
  <!--<echo message="+=============================================+" />
  <echo message="          ams  提交完成........      " />
  <echo message="+=============================================+" />-->

 </target>

 <target name="bms" if="bmsCondition"> 
  <!--<echo message="+=============================================+" />
  <echo message="          bms  正在编译........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${bms.dir}/code/public/zeromq/builds/msvc" executable="${MsBuild}" >
   <arg line=' msvc.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${bms.dir}/code" executable="${MsBuild}" >
   <arg line=' bayonet.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          bms  编译完成........      " />
  <echo message="+=============================================+" />-->
  <echo message="+=============================================+" />
  <echo message="          bms  正在拷贝........      " />
  <echo message="+=============================================+" />
  <copy todir="${Server_Install.dir}/bms">
   <fileset dir="${bms.dir}/code/Release">
    <exclude name="**/*.lib" />
    <exclude name="**/*.svn" />
    <!--<exclude name="**/*.pdb" />-->
    <exclude name="**/*.exp" />
    <exclude name="**/*.map" />
   </fileset>
  </copy>
  <echo message="+=============================================+" />
  <echo message="          bms  拷贝完成........      " />
  <echo message="+=============================================+" />
  
  <!--<echo message="+=============================================+" />
  <echo message="          bms  正在提交........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${bms.dir}/code/Release" executable="svn " >
   <arg line='ci -m "提交bms(${bms.dir}/code/Release文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${bms.dir}/code/Release" executable="svn " >
  <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          bms  提交完成........      " />
  <echo message="+=============================================+" />-->
 </target>

 <target name="nms" if="nmsCondition"> 
  <!--<echo message="+=============================================+" />
  <echo message="          nms  正在编译........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${nms.dir}/code" executable="${MsBuild}" >
   <arg line=' nms.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          nms  编译完成........      " />
  <echo message="+=============================================+" />-->
  <echo message="+=============================================+" />
  <echo message="          nms  正在拷贝........      " />
  <echo message="+=============================================+" />
  <copy todir="${Server_Install.dir}/nms">
   <fileset dir="${nms.dir}/code/bin/nms/nms_vs2008_release">
    <exclude name="**/*.lib" />
    <exclude name="**/*.svn" />
    <!--<exclude name="**/*.pdb" />-->
    <exclude name="**/*.exp" />
    <exclude name="**/*.map" />
   </fileset>
  </copy>
  <echo message="+=============================================+" />
  <echo message="          nms  拷贝完成........      " />
  <echo message="+=============================================+" />
  
  <!--<echo message="+=============================================+" />
  <echo message="          nms  正在提交........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${nms.dir}/code/bin/nms/nms_vs2008_release" executable="svn " >
   <arg line='ci -m "提交nms(${nms.dir}/code/bin/nms/nms_vs2008_release文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${nms.dir}/code/bin/nms/nms_vs2008_release" executable="svn " >
  <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          nms  提交完成........      " />
  <echo message="+=============================================+" />-->
 </target>
 
 <target name="pms" if="pmsCondition"> 

  <!--<echo message="+=============================================+" />
  <echo message="          pms  正在编译........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${pms.dir}/code/src/IocpStore" executable="${MsBuild}" >
   <arg line=' IocpStore.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${pms.dir}/code/src/pic_format_tool" executable="${MsBuild}" >
   <arg line=' pic_format_tool.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${pms.dir}/code/src/format_tool_mfc" executable="${MsBuild}" >
   <arg line=' format_tool_mfc.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${pms.dir}/code/src/VrpTest" executable="${MsBuild}" >
   <arg line=' VrpTest.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${pms.dir}/code/src/vrbClientSDK" executable="${MsBuild}" >
   <arg line=' vrbClientSDK.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  
  <exec dir="${pms.dir}/code/src" executable="${MsBuild}" >
   <arg line=' pms.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          pms  编译完成........                " />
  <echo message="+=============================================+" />-->
  <echo message="+=============================================+" />
  <echo message="          pms  正在拷贝........      " />
  <echo message="+=============================================+" />
  <copy todir="${Server_Install.dir}/pms">
   <fileset dir="${pms.dir}/code/bin/vs2008_release">
    <exclude name="**/*.lib" />
    <exclude name="**/*.svn" />
    <!--<exclude name="**/*.pdb" />-->
    <exclude name="**/*.exp" />
    <exclude name="**/*.map" />
   </fileset>
  </copy>
  <echo message="+=============================================+" />
  <echo message="          pms  拷贝完成........      " />
  <echo message="+=============================================+" />
  
  <!--<echo message="+=============================================+" />
  <echo message="          pms  正在提交........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${pms.dir}/code/bin/vs2008_release" executable="svn " >
   <arg line='ci -m "提交pms(${pms.dir}/code/bin/vs2008_release文件夹下)自动编译文件" .'/>
  </exec>
  <exec dir="${pms.dir}/code/bin/vs2008_release" executable="svn " >
  <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          pms  提交完成........      " />
  <echo message="+=============================================+" />-->
 
 </target>
 

 <target name="vrb" if="vrbCondition"> 
  <!--<echo message="+=============================================+" />
  <echo message="          vrb  正在编译webservice.sln........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${vrb.dir}/code/src" executable="${MsBuild}" >
   <arg line=' webservice.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          vrb  正在编译vrb.sln........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${vrb.dir}/code/src" executable="${MsBuild}" >
   <arg line=' vrb.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          vrb  编译完成........      " />
  <echo message="+=============================================+" />-->
  <echo message="+=============================================+" />
  <echo message="          vrb  正在拷贝........      " />
  <echo message="+=============================================+" />
  <copy todir="${Server_Install.dir}/vrb">
   <fileset dir="${vrb.dir}/code/bin/release">
    <exclude name="**/*.lib" />
    <exclude name="**/*.svn" />
    <!--<exclude name="**/*.pdb" />-->
    <exclude name="**/*.exp" />
    <exclude name="**/*.map" />
   </fileset>
  </copy>
  <echo message="+=============================================+" />
  <echo message="          vrb  拷贝完成........      " />
  <echo message="+=============================================+" />
  
  <!--<echo message="+=============================================+" />
  <echo message="          vrb  正在提交........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${vrb.dir}/code/bin/release" executable="svn " >
   <arg line='ci -m "提交vrb(${vrb.dir}/code/bin/release文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${vrb.dir}/code/bin/release" executable="svn " >
    <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          vrb  提交完成........      " />
  <echo message="+=============================================+" />-->
 </target>
 
 <target name="prebuildClient" if="Clientscondition">
 <echo message="拷贝MapOcx\MapOcx.ocx,VideoPlayer\codecs\setup.ocx到Client安装文件路径" />
  <copy todir="${Client_Install.dir}/MapOcx" file="${csc.dir}/code/CMS_ControlClientRun/MapOcx/MapOcx.ocx"/>
  <copy todir="${Client_Install.dir}/VideoPlayer/codecs" file="${csc.dir}/code/CMS_ControlClientRun/VideoPlayer/codecs/setup.ocx"/>
 </target>
 
 <target name="buildClient" depends="prebuildClient" if="Clientscondition">
  <condition property="ControlClientscondition"> 
   <equals arg1="${ControlClient}" arg2="1" /> 
  </condition> 
  <antcall target="ControlClient"></antcall>
 </target>
 
 <target name="makeClient" depends="buildClient"  if="Clientscondition"><!--depends="buildClient"-->
 
  <exec dir="${csc.dir}" executable="svn " output="${csc.dir}\revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="Clientrevision" srcFile="${csc.dir}\revision.txt"/>
  <propertyregex property="Client_revision" input="${Clientrevision}" regexp="(.*)Last Changed Rev: (.*)\r" select="\2"/>
  <delete file="${csc.dir}/revision.txt"/>
  <echo message="+=============================================+" />
  <echo message="            Client SVN 版本:${Client_revision}........      " />
  <echo message="+=============================================+" />
  <echo message="+=============================================+" />
  <echo message="            正在制作Client安装包........      " />
  <echo message="+=============================================+" />
  <exec dir="${Install.dir}" executable="${IsCmdBld}" >
    <arg line=' -p "${Client_ISM_Name}" -c COMP'/>
  </exec>
  <rename src="${Client_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/Setup.exe" dest="${Client_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/CSC_Setup_${version}_${Client_revision}_Build${build.date}.exe"/>
  <echo message="+=============================================+" />
  <echo message="            制作Client安装包成功      " />
  <echo message="+=============================================+" />
  <copy todir="${Package.dir}" file="${Client_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/CSC_Setup_${version}_${Client_revision}_Build${build.date}.exe"/>
  <delete file="${Client_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/CSC_Setup_${version}_${Client_revision}_Build${build.date}.exe"/>
  
  <echo message="+=============================================+" />
  <echo message="            将Client安装包上传SVN..      " />
  <echo message="+=============================================+" />
 
  <exec dir="${Package.dir}" executable="svn " >
      <arg line='add CSC_Setup_${version}_${Client_revision}_Build${build.date}.exe --username 用户名 --password 密码 --non-interactive --trust-server-cert'/>
  </exec>
  <exec dir="${Package.dir}" executable="svn " >
      <arg line='ci -m "提交CSC_Setup_${version}_${Client_revision}_Build${build.date}.exe安装包" . --username 用户名 --password 密码 --non-interactive --trust-server-cert'/>
  </exec>
  <exec dir="${Package.dir}" executable="svn " >
  <arg line=' update .'/>
  </exec>
  
  <echo message="+=============================================+" />
  <echo message="            Client安装包上传svn完成..     " />
  <echo message="+=============================================+" />
  
  <delete file="${Package.dir}/CSC_Setup_${version}_${Client_revision}_Build${build.date}.exe"/>
  
 </target>
 

 <target name="ControlClient" if="ControlClientscondition"> 
   
  <!--<exec dir="${csc.dir}" executable="svn " output="revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="Clientrevision" srcFile="revision.txt"/>
  <propertyregex property="Client_revision" input="${Clientrevision}" regexp="(.*)最后修改的版本: (.*)\r" select="\2"/>
  <echo message="+=============================================+" />
  <echo message="            ${Client_revision}........      " />
  <echo message="+=============================================+" /> -->
  <!--<echo message="+=============================================+" />
  <echo message="          csc  正在编译........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${Client.dir}/common/streamlayer" executable="${MsBuild}" >
   <arg line=' StreamLayer.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/common/pinyinlib" executable="${MsBuild}" >
   <arg line=' PinyinLib.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/common/DevAccessInfo" executable="${MsBuild}" >
   <arg line=' DevAccessInfo.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/common/multinetsdk/MultiNetDeviceDLL" executable="${MsBuild}" >
   <arg line=' MultiNetDevice.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/common/componets/PreviewLayer" executable="${MsBuild}" >
   <arg line=' PreviewLayer.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/common/componets/PlayBackLayer" executable="${MsBuild}" >
   <arg line=' PlayBackLayer.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/common/backup/BurnData" executable="${MsBuild}" >
   <arg line=' BurnData.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/common/backup" executable="${MsBuild}" >
   <arg line=' Backup.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/tool/autoupdate" executable="${MsBuild}" >
   <arg line=' BuildXML.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/tool/ncg_internal/CascStreamSDK" executable="${MsBuild}" >
   <arg line=' CascStreamSDK.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/tool/ncg_internal/Cascade_SDK" executable="${MsBuild}" >
   <arg line=' Cascade_SDK.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/tool/videoedit" executable="${MsBuild}" >
   <arg line=' Wuxi_FileEditor.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  
  <exec dir="${Client.dir}/tool/pictureview" executable="${MsBuild}" >
   <arg line=' PictureViewTest.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/tool/autoupdate/UpDate" executable="${MsBuild}" >
   <arg line=' UpDate.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild'/>
  </exec>
  <exec dir="${Client.dir}/tool/ConfigTools" executable="${MsBuild}" >
   <arg line=' ConfigTools.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/tool/platform/平台对外接口(windows)" executable="${MsBuild}" >
   <arg line=' Platform.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  
  <exec dir="${Client.dir}/ocx/preview/code" executable="${MsBuild}" >
   <arg line=' PlayView_OCX.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/ocx/playback/code" executable="${MsBuild}" >
   <arg line=' PlayBack_OCX.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/ocx/mapocx/code" executable="${MsBuild}" >
   <arg line=' MapOcx.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  
  <exec dir="${csc.dir}/code" executable="${MsBuild}" >
   <arg line=' csc.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          csc  编译完成........      " />
  <echo message="+=============================================+" />-->

  <echo message="+=============================================+" />
  <echo message="          csc  正在拷贝........      " />
  <echo message="+=============================================+" />
  <copy todir="${Client_Install.dir}">
   <fileset dir="${csc.dir}/code/CMS_ControlClientRun">
    <exclude name="**/*.lib" />
    <exclude name="**/*.svn" />
    <exclude name="**/*.pdb" />
    <exclude name="**/*.exp" />
    <exclude name="**/*.map" />
   </fileset>
  </copy>
  <echo message="+=============================================+" />
  <echo message="          csc  拷贝完成........               " />
  <echo message="+=============================================+" />
  
  <!--<echo message="+=============================================+" />
  <echo message="          csc  正在提交........      " />
  <echo message="+=============================================+" />-->
  <!--<exec dir="${csc.dir}/code/CMS_ControlClientRun" executable="svn " >
   <arg line='ci -m "提交vrb(${csc.dir}/code/CMS_ControlClientRun文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${csc.dir}/code/CMS_ControlClientRun" executable="svn " >
      <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          csc  提交完成........               " />
  <echo message="+=============================================+" />-->
 </target>


 
 <target name="prebuildCMS" if="CMSscondition">
    
  <echo message="删除CMS/code/HikCMS/src/main/webapps/axis2-web此文件夹及此文件夹下的子文件夹" />
     <delete includeEmptyDirs="true">
      <fileset dir="${basedir}/CMS/code/HikCMS/src/main/webapps/axis2-web"/>
  </delete>
  <echo message="删除CMS/code/HikCMS/src/main/webapps/axis2-web此文件夹及此文件夹下的子文件夹,删除完成" />

  <echo message="拷贝Tomcat到CMS_Install" />

  <copy todir="${CMS_Install.dir}" file="${StaticComponent.dir}\CMS\${Tomcat}.zip"/>
  <echo message="解压tomcat压缩包" />
  <unzip src="${CMS_Install.dir}\${Tomcat}.zip" dest="${CMS_Install.dir}"/>
  <echo message="删除tomcat压缩包" />
  <delete file="${CMS_Install.dir}\${Tomcat}.zip"/>
  
  <if> 
   <equals arg1="${Common}" arg2="1"/> 
   <then> 
  <echo message="+==================================================================================+" />
  <echo message="         拷贝RecordQueryService到CMS安装文件Tomcat的bin目录下........              " />
  <echo message="+===================================================================================+" />
    <copy todir="${CMS_Install.dir}\${Tomcat}\bin\RecordQueryService">
     <fileset dir="${Common.dir}/RecordQueryService/code/bin/Win32/Release">
      <exclude name="**/*.lib" />
      <exclude name="**/*.svn" />
      <exclude name="**/*.pdb" />
      <exclude name="**/*.exp" />
      <exclude name="**/*.map" />
     </fileset>
    </copy>
  <echo message="+=====================================================================================+" />
  <echo message="         拷贝RecordQueryService到CMS安装文件Tomcat的bin目录下,拷贝完成........      " />
  <echo message="+======================================================================================+" />
  

    
  <!--<echo message="+====================================================+" />
  <echo message="          RecordQueryService  正在提交........      " />
  <echo message="+=====================================================+" />-->
  <!--<exec dir="${Common.dir}/RecordQueryService/code/bin/Win32/Release" executable="svn " >
   <arg line='ci -m "提交RecordQueryService(${Common.dir}/RecordQueryService/code/bin/Win32/Release文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${Common.dir}/RecordQueryService/code/bin/Win32/Release" executable="svn " >
      <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+====================================================+" />
  <echo message="          RecordQueryService  提交完成........      " />
  <echo message="+====================================================+" />-->
    
  <echo message="+===============================================================+" />
  <echo message="          拷贝sntp_server到CMS安装文件路径........               " />
  <echo message="+================================================================+" />
    <copy todir="${CMS_Install.dir}\${Tomcat}\bin\sntp_server">
     <fileset dir="${Common.dir}/sntp/sntp_server/bin/release">
      <exclude name="**/*.lib" />
      <exclude name="**/*.svn" />
      <exclude name="**/*.pdb" />
      <exclude name="**/*.exp" />
      <exclude name="**/*.map" />
     </fileset>
    </copy>
  <echo message="+===================================================================+" />
  <echo message="          拷贝sntp_server到CMS安装文件路径,拷贝完成........      " />
  <echo message="+===================================================================+" />
  
  <echo message="**********************************************************************" />
  <exec dir="${basedir}/CMS/code/HikCMS" executable="svn " output="${basedir}/CMS/code/HikCMS/revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="CMSrevision" srcFile="${basedir}/CMS/code/HikCMS/revision.txt"/> 
  <propertyregex property="CMS_revision" input="${CMSrevision}" regexp="(.*)Last Changed Rev: (.*)\r" select="\2"/>
  <delete file="${basedir}/CMS/code/HikCMS/revision.txt"/> 
  <echo message="**********************************************************************" />
  
  <echo message="+====================修改version.properties和exe的svn版本号保持一致=================================+" />
            <replace file="${basedir}\CMS\code\HikCMS\src\main\resources\version.properties" token="17984" value="${CMS_revision}" summary="true"/>
        <echo message="+===============================修改version.properties完成======================================+"  /> 
    
  <!--<echo message="+=============================================+" />
  <echo message="          sntp_server 正在提交........      " />
  <echo message="+=============================================+" />
  <exec dir="${Common.dir}/sntp/sntp_server/bin/release" executable="svn " >
   <arg line='ci -m "提交sntp_server(${Common.dir}/sntp/sntp_server/bin/release文件夹下)自动编译文件" .'/>
  </exec>
  <exec dir="${Common.dir}/sntp/sntp_server/bin/release" executable="svn " >
      <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+=============================================+" />
  <echo message="          sntp_server 提交完成........      " />
  <echo message="+=============================================+" />-->
   </then>
   <else>
    <!--<echo >RecordQueryService和sntp_server非定制,直接copy成果物,</echo>-->
    <!--含中文,需指定编码,且含ant.jar包,需在classpath中指定-->
    <!--<exec dir="${script.dir}" executable="javac ">
     <arg line='-encoding GBK UnZipAndRarUtilCopy.java'/>
    </exec>
    <exec dir="${script.dir}" executable="java ">
     <arg line='UnZipAndRarUtilCopy'/>
     <arg line='"${Result.dir}/CMS"'/>--><!--需要解压的成果物文件位置-->
     <!--<arg line='"${Server_Install.dir}"'/>--><!--解压后文件位置-->
    <!--</exec>-->
   </else>
  </if>
  <!--<exec dir="${Client.dir}/ocx/preview/code" executable="${MsBuild}" >
   <arg line=' PlayView_OCX.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/ocx/playback/code" executable="${MsBuild}" >
   <arg line=' PlayBack_OCX.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
  <exec dir="${Client.dir}/ocx/mapocx/code" executable="${MsBuild}" >
   <arg line=' MapOcx.sln /p:Configuration=Release /property:${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>-->
  
        <!--<echo message="+====================================================+" />
  <echo message="          拷贝MapOcx.ocx到控件安装目录........       " />
  <echo message="+====================================================+" />-->
  
    <!--<copy todir="${Ocx_Install.dir}" file="${Client.dir}\ocx\mapocx\code\Release\MapOcx.ocx"/>-->
   
     <!--<echo message="+======================================================+" />
  <echo message="          拷贝MapOcx.ocx到控件安装目录,拷贝完成..." />
  <echo message="+========================================================+" />-->

     <!--<echo message="+=================================================+" />
  <echo message="          拷贝playback到控件安装目录........      " />
  <echo message="+=================================================+" />-->
    <!--<copy todir="${Ocx_Install.dir}">
     <fileset dir="${Client.dir}\ocx\playback\code\Run">
      <exclude name="**/*.lib" />
      <exclude name="**/*.svn" />
      <exclude name="**/*.pdb" />
      <exclude name="**/*.exp" />
      <exclude name="**/*.map" />
     </fileset>
    </copy>-->
     <!--<echo message="+==================================================+" />
  <echo message="          拷贝playback到控件安装目录,拷贝完成... " />
  <echo message="+==================================================+" />-->
   
     <!--<echo message="+==================================+" />
  <echo message="         playback 正在提交........  " />
  <echo message="+==================================+" />
  <exec dir="${Client.dir}\ocx\playback\code\Run" executable="svn " >
   <arg line='ci -m "提交playback(${Client.dir}\ocx\playback\code\Run文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${Client.dir}\ocx\playback\code\Run" executable="svn " >
      <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+====================================+" />
  <echo message="         playback 提交完成........    " />
  <echo message="+====================================+" />-->
   
     <!--<echo message="+======================================+" />
  <echo message="          拷贝preview到控件安装目录..." />
  <echo message="+======================================+" />-->
       <!--<copy todir="${Ocx_Install.dir}">
     <fileset dir="${Client.dir}\ocx\preview\code\Run">
      <exclude name="**/*.lib" />
      <exclude name="**/*.svn" />
      <exclude name="**/*.pdb" />
      <exclude name="**/*.exp" />
      <exclude name="**/*.map" />
     </fileset>
       </copy>-->
  <!--<echo message="+==================================================+" />
  <echo message="          拷贝preview到控件安装目录,拷贝完成... " />
  <echo message="+===================================================+" />-->
  
  <!--<echo message="+=====================================+" />
  <echo message="         preview 正在提交........      " />
  <echo message="+======================================+" />
  <exec dir="${Client.dir}\ocx\preview\code\Run" executable="svn " >
   <arg line='ci -m "提交preview(${Client.dir}\ocx\preview\code\Run文件夹下)自动编译文件" . '/>
  </exec>
  <exec dir="${Client.dir}\ocx\preview\code\Run" executable="svn " >
      <arg line=' update .'/>
  </exec>-->
  <!--<echo message="+=======================================+" />
  <echo message="          preview 提交完成........      " />
  <echo message="+========================================+" />-->
  
  
     <!--<echo message="+=============================================+" />
  <echo message="            正在制作OCX安装包........      " />
  <echo message="+=============================================+" />
     <exec dir="${Install.dir}" executable="${IsCmdBld}" >
    <arg line=' -p "${OCX_ISM_Name}" -c COMP'/>
  </exec>
  <rename src="${OCX_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/Setup.exe" dest="${OCX_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/cmsocx.exe"/>
  <echo message="+=============================================+" />
  <echo message="            制作OCX安装包成功      " />
  <echo message="+=============================================+" />-->
  <!--<copy todir="${CMS_Install.dir}\${Tomcat}\webapps\download" file="${OCX_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/cmsocx.exe"/>-->
  
  <echo message="+=============================================================+" />
  <echo message="            拷贝jre-6u14-windows-x64.exe........             " />
  <echo message="+===============================================================+" />
  <!--<copy todir="${CMS_Install.dir}\${Tomcat}" file="D:\jenkins\Install\StaticComponent\CMS\jre-6u14-windows-x64.exe"/>-->
  
  <copy todir="${CMS_Install.dir}\${Tomcat}" file="D:\jenkins\Install\StaticComponent\CMS\jre-7u75-windows-x64.exe"/>
  
  <echo message="+==============================================================+" />
  <echo message="            拷贝jre-6u14-windows-x64.exe,拷贝完成........     " />
  <echo message="+==============================================================+" />
  
        <echo message="+=============================================+" />
  <echo message="            拷贝OCX控件........             " />
  <echo message="+================${Package.dir}/download/cmsocx.exe=============================+" />
  
  <property name="ocx_path" value="${Package.dir}/download/cmsocx.exe"/> 
  <condition property="ocx_exist" value="true" else="false"> 
   <available property="isAvailable" type="file" file="${ocx_path}"/> 
  </condition> 
  <echo message="IPM单号下成果物控件是否存在,如果存在优先使用定制成果物库中的控件:${ocx_exist}" />
  
  <if> 
   <equals arg1="${ocx_exist}" arg2="true"/> 
   <then> 
    <copy todir="${CMS_Install.dir}\${Tomcat}\webapps\download" file="${Package.dir}/download/cmsocx.exe"/>
    <echo >从IPM单号成果物路径下拷贝cmsocx.exe到CMS install的download目录下</echo> 
   </then>
   <else> 
     <copy todir="${CMS_Install.dir}\${Tomcat}\webapps\download" file="${Result.dir}/ocx/cmsocx.exe"/>
     <echo >从基线成果物路径下拷贝cmsocx.exe到CMS install的download目录下</echo> 
   </else>    
  </if> 
  
  <!--<copy todir="${CMS_Install.dir}\${Tomcat}\webapps\download" file="D:\jenkins\script\ocx\cmsocx.exe"/>-->
  <echo message="+=================${Result.dir}/ocx/cmsocx.exe============================+" />
  <echo message="            拷贝OCX控件,拷贝完成........     " />
  <echo message="+=============================================+" />
  <echo message="+=============================================+" />
  <echo message="            给控件打数字签名(${CMS_Install.dir}\${Tomcat}\webapps\download\cmsocx.exe).........        " />
  <echo message="+=============================================+" />
  
  <exec executable="cmd">
           <arg value="/c"/>
           <arg value="*************" />
  </exec>
  
  <echo message="+=============================================+" />
  <echo message="            给控件打数字签名完成.......        " />
  <echo message="+=============================================+" />
  <!--<delete file="${OCX_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/cmsocx.exe"/>-->
 </target>

 <target name="buildCMS" depends="prebuildCMS" if="CMSscondition"> 

  <exec executable="cmd" dir="${basedir}/CMS/code/HikCMS" >
           <arg value="/c"/>
           <arg value="mvn clean package -Dmaven.test.skip=true" />
        </exec>
  <!--<copy todir="${CMS_Install.dir}" file="${CMS.dir}\code\HikCMS\target\ROOT.war"/>-->
  <echo message="拷贝ROOT.war包至tomcat的webapps目录下" />
  <copy todir="${CMS_Install.dir}\${Tomcat}\webapps" file="${CMS.dir}\code\HikCMS\target\ROOT.war"/>
 </target>
 
 <target name="makeCMS" depends="buildCMS" if="CMSscondition"><!--depends="buildCMS" -->
 
  <exec dir="${basedir}/CMS/code/HikCMS" executable="svn " output="${basedir}/CMS/code/HikCMS/revision.txt">
   <arg line='info'/>
  </exec>
  <loadfile property="CMSrevision" srcFile="${basedir}/CMS/code/HikCMS/revision.txt"/> 
  <propertyregex property="CMS_revision" input="${CMSrevision}" regexp="(.*)Last Changed Rev: (.*)\r" select="\2"/>
  <delete file="${basedir}/CMS/code/HikCMS/revision.txt"/> 
  <echo message="+=============================================+" />
  <echo message="             CMS SVN 版本:${CMS_revision}   " />
  <echo message="+=============================================+" />
  <echo message="+=============================================+" />
  <echo message="            正在制作CMS安装包........      " />         
  <echo message="+=============================================+" />
  <exec dir="${Install.dir}" executable="${IsCmdBld}" >
    <arg line=' -p "${CMS_ISM_Name}" -c COMP'/>
  </exec>
  
  <rename src="${CMS_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/Setup.exe" dest="${CMS_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/CMS_Setup_${version}_${CMS_revision}_Build${build.date}.exe"/>
  <echo message="+=============================================+" />
  <echo message="            制作CMS安装包成功      " />
  <echo message="+=============================================+" />
  <copy todir="${Package.dir}" file="${CMS_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/CMS_Setup_${version}_${CMS_revision}_Build${build.date}.exe"/>
  <delete file="${CMS_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/CMS_Setup_${version}_${CMS_revision}_Build${build.date}.exe"/>
  
  <echo message="+=============================================+" />
  <echo message="            将CMS安装包上传SVN..      " />
  <echo message="+=============================================+" />
 
        <exec dir="${Package.dir}" executable="svn " >
      <arg line='add CMS_Setup_${version}_${CMS_revision}_Build${build.date}.exe --username 用户名 --password 密码 --non-interactive --trust-server-cert'/>
  </exec>
  <exec dir="${Package.dir}" executable="svn " >
      <arg line='ci -m "提交CMS_Setup_${version}_${CMS_revision}_Build${build.date}.exe安装包" . --username 用户名 --password 密码 --non-interactive --trust-server-cert'/>
  </exec>
  <exec dir="${Package.dir}" executable="svn " >    
  <arg line=' update .'/>
  </exec>
  
  <echo message="+=============================================+" />
  <echo message="            CMS安装包上传svn完成..     " />
  <echo message="+=============================================+" />
  
  <delete file="${Package.dir}/CMS_Setup_${version}_${CMS_revision}_Build${build.date}.exe"/>
  
  <echo message="+====================修改version.properties和svn上的版本号保持一致=====================================+" />
            <replace file="${basedir}\CMS\code\HikCMS\src\main\resources\version.properties" token="${CMS_revision}" value="17984" summary="true"/>
        <echo message="+=================================修改version.properties完成===========================================+"  /> 
    
 </target>
 
  <target name="makeTvmc">
   
     <exec dir="${Common.dir}/sntp/sntp_client" executable="${MsBuild}" >
   <arg line=' SntpClient.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
   
        <exec dir="${script.dir}" executable="javac">
   <arg line='-encoding GBK ReadTvmcSvnNumberBase.java'/>
  </exec>
  <exec dir="${script.dir}" executable="java" output="${Result.dir}\TVMCrevisionNumber.txt">
   <arg line='ReadTvmcSvnNumberBase'/>
   <arg line='${Result.dir}/tvmc'/>
  </exec>
  <loadfile property="TVMCrevision" srcFile="${Result.dir}\TVMCrevisionNumber.txt"/>
  <echo message="+=============================================+" />
  <echo message="               ${TVMCrevision}              " />
  <echo message="+=============================================+" />
  <propertyregex property="TVMC_revision" input="${TVMCrevision}" regexp="(.*)TVMSSvnNumber: (.*)\r" select="\2"/>
  <!--<delete dir="${Server.dir}/revision.txt"/>-->
  <echo message="+=================================================+" />
  <echo message="            TVMC SVN 版本:${TVMC_revision}    " />
  <echo message="+=================================================+" />

       <echo message="+=======================================================================================================+" /> 
        <echo message="+===============将电视墙成果物目录下的压缩包解压至安装目录下用于打包===============================+" />
        <echo message="+=======================================================================================================+" />
  
  <exec dir="${script.dir}" executable="javac ">
   <arg line='-encoding GBK UnZipAndRarUtilBase9600.java'/><!--含中文,需指定编码,且含ant.jar包,需在classpath中指定-->
  </exec>
  <exec dir="${script.dir}" executable="java ">
   <arg line='UnZipAndRarUtilBase9600'/>
   <arg line='"${Result.dir}/tvmc"'/><!--需要解压的成果物文件位置-->
   <arg line='"${Result.dir}/tvmc"'/><!--解压后文件位置-->
   <arg line='0'/><!--解压-->
   <arg line='"${module}"'/>
   <arg line='"${Result.dir}/tvmc"'/>
  </exec>
  
  <echo message="+=======================================================================================================+" /> 
        <echo message="+===============将电视墙成果物目录下的压缩包解压至安装目录下,解压完成===============================+" />
        <echo message="+=======================================================================================================+" />
       
        <exec dir="${Common.dir}/sntp/sntp_client" executable="${MsBuild}" >
   <arg line=' SntpClient.sln /p:Configuration=Release /property:WarningLevel=${WarningLevel}  /p:Platform=Win32  /t:rebuild /toolsversion:3.5'/>
  </exec>
       
        <echo message="+=============================================+" />
  <echo message="          重命名电视墙文件夹........      " />
  <echo message="+=============================================+" />
  
     <exec dir="${script.dir}" executable="javac ">
   <arg line='-encoding GBK UnZipAndRarUtilBase9600.java'/>
  </exec>
  <exec dir="${script.dir}" executable="java ">
   <arg line='UnZipAndRarUtilBase9600'/>
   <arg line='"${Result.dir}/tvmc"'/><!--需要解压的成果物文件位置-->
   <arg line='"${Result.dir}/tvmc"'/><!--解压后文件位置-->
   <arg line='1'/><!--rename-->
   <arg line='"${module}"'/>
   <arg line='"0"'/>
  </exec>
  
  <echo message="+=============================================+" />
  <echo message="          重命名电视墙文件夹完成........      " />
  <echo message="+=============================================+" />
       
        <echo message="+==================================================================================+" />
     <echo message="          拷贝项目-成果物tvmc文件夹下的tvmc_Install到电视墙安装目录下........      " />
  <echo message="+====================================================================================+" />

    <copy todir="${Tvmc_Install.dir}">
     <fileset dir="${Result.dir}/tvmc/tvmc_Install">
      <exclude name="**/*.lib" />
      <exclude name="**/*.svn" />
      <!--<exclude name="**/*.pdb" />-->
      <exclude name="**/*.exp" />
      <exclude name="**/*.map" />
     </fileset>
    </copy>
  <echo message="+=================================================================================================+" />
     <echo message="          拷贝项目-成果物tvmc文件夹下的tvmc_Install到电视墙安装目录下,拷贝完成.......      " />
  <echo message="+===========================================================================================+" />
       
       
       
        <echo message="+=============================================+" />
  <echo message="            正在制作安装包........      " />
  <echo message="+=============================================+" />
  <exec dir="${Install.dir}" executable="${IsCmdBld}" >
    <arg line=' -p "${Tvmc_ISM_Name}" -c COMP'/>
  </exec>
  <rename src="${Tvmc_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/Setup.exe" dest="${Tvmc_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/TVMC_Setup_${version}_${TVMC_revision}_Build${build.date}.exe"/>
  <echo message="+=============================================+" />
  <echo message="            制作安装包成功      " />
  <echo message="+=============================================+" />
  <copy todir="${Package.dir}" file="${Tvmc_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/TVMC_Setup_${version}_${TVMC_revision}_Build${build.date}.exe"/>
  <delete file="${Tvmc_ISEng.dir}/Media/SINGLE_EXE_IMAGE/Package/TVMC_Setup_${version}_${TVMC_revision}_Build${build.date}.exe"/>
  
  <echo message="+=============================================+" />
  <echo message="            将安装包上传SVN..      " />
  <echo message="+=============================================+" />
 
  <exec dir="${Package.dir}" executable="svn " >
      <arg line='add TVMC_Setup_${version}_${TVMC_revision}_Build${build.date}.exe --username 用户名 --password 密码 --non-interactive --trust-server-cert'/>
  </exec>
  <exec dir="${Package.dir}" executable="svn " >
      <arg line='ci -m "提交TVMC_Setup_${version}_${TVMC_revision}_Build${build.date}.exe安装包" . --username 用户名 --password 密码 --non-interactive --trust-server-cert'/>
  </exec>
  <exec dir="${Package.dir}" executable="svn " >
  <arg line=' update .'/>
  </exec>
  
  <echo message="+=============================================+" />
  <echo message="            安装包上传svn完成..     " />
  <echo message="+=============================================+" />
  
  <delete file="${Package.dir}/TVMC_Setup_${version}_${TVMC_revision}_Build${build.date}.exe"/>
  
 </target>
</project>

0 0