`

ant脚本下载svn并自动化编译

 
阅读更多

参考链接 http://blog.csdn.net/rose19891213/article/details/6085899

http://blog.csdn.net/zh2qiang/article/details/6795823

 

忙了两个多小时终于把最困难的地方给过去了,直接贴代码

<?xml version="1.0" encoding="gb2312"?> 
 
<!-- binding svnkit --> 
<project basedir="." name="cowork" default="svncheckout"> 
  <property name="destPath" value="${basedir}" /> 
 
  <property name="svn.username" value="11" />
  <property name="svn.password" value="11" />
  <property name="svnurl" value="https://9.123.195.191/svn/APEducation/trunk" />
 
  <path id="path.svnant"> 
    <fileset dir="${basedir}"> 
      <include name="**/*.jar"/> 
    </fileset> 
  </path> 
  <echo>导出目录${destPath}</echo>
  <typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="path.svnant"/> 
  <target name="svncheckout" > 
    <svnSetting id="svnparams" username="${svn.username}" password="${svn.password}" javahl="false" svnkit="true"/> 
    <svn refid="svnparams"> 
      <checkout url="${svnurl}" destPath="${destPath}" /> 
    </svn> 
  </target> 
</project>

 

<?xml version="1.0" ?>
<project name="hp" default="war">
 <property name="dir" value="C:\project\workspace\APEducation" />
 <property name="WebContent" value="C:\project\workspace\APEducation\WebRoot" />
 <property name="dist" value="C:\temp" />
 <property name="warDest" value="wardest" />
 <property name="classDest" value="class" />
 <property name="source-encoding" value="UTF-8" />
 <property name="warName" value="APEDU.war"/>

   



 <!--编译java源文件所需的jar文件 -->
 <path id="build-classpath">
  <fileset dir="${dir}\WebRoot\WEB-INF\lib">
   <include name="*.jar" />
  </fileset>
 </path>
 
 <!--清理-->
 <target name="clean">
  <delete dir="${dist}" />
 </target>
 
 <!-- 初始化,建立相关的文件夹-->
 <target name="init">
  <mkdir dir="${dist}"/>
  <mkdir dir="${dist}/${warDest}" />
  <mkdir dir="${dist}/${classDest}" />
 </target>
 
 <!-- 编译java源文件并拷贝到相应的文件夹-->
 <target name="compile" depends="init">
  <javac srcdir="${dir}/src" destdir="${dist}/${classDest}"  target="1.6"
   classpathref="build-classpath" encoding="${source-encoding}"
   debug="true" debuglevel="source,lines,vars"  includeantruntime="on">
  </javac>
 </target>
 
 <!--拷贝WebRoot文件到相应的文件夹-->
 <target name="copy">
  <copy todir="${dist}/${warDest}">
   <fileset dir="${dir}/WebRoot">
    <exclude name="**/*.jar"/>
   </fileset>
  </copy>
  <copy todir="${dist}/${classDest}">
   <fileset dir="${dir}/src">
    <exclude name="**/*.java"/>
   </fileset>
  </copy>
  
  <!--拷贝部署用的配置文件-->
  <!--delete file="${dist}/${warDest}/WEB-INF/config/log4j.properties"/>
  <move file="${dist}/${warDest}/WEB-INF/config/log4j.build.properties"
   tofile="${dist}/${warDest}/WEB-INF/config/log4j.properties" />
  <delete file="${dist}/${warDest}/WEB-INF/web.xml"/>
  <move file="${dist}/${warDest}/WEB-INF/web.build.xml"
   tofile="${dist}/${warDest}/WEB-INF/web.xml" />
  <delete file="${dist}/${warDest}/META-INF/context.xml"/>
   <move file="${dist}/${warDest}/META-INF/context.build.xml"
    tofile="${dist}/${warDest}/META-INF/context.xml" /-->
 </target>
 
 <!--打包-->
 <target name="war" depends="compile, copy">
  <war destfile="${dist}/${warName}" webxml="${dir}/WebRoot/WEB-INF/web.xml">
   <fileset dir="${dist}/${warDest}" />
   <!--
   <lib dir="${dir}/WebRoot/WEB-INF/lib"/>
   -->
   <classes dir="${dist}/${classDest}"></classes>
  </war>
  <delete dir="${dist}/${warDest}"></delete>
  <delete dir="${dist}/${classDest}"></delete>
 </target>
 
</project>

 有空再整理一下,先睡觉了

分享到:
评论

相关推荐

    ant 脚本从svn上取代码打包代码全,同时包括相关的jar包

    总的来说,这个场景涉及到Ant脚本的基本使用,包括执行外部命令(如SVN)、编译源码、管理类路径以及打包成JAR。在实际开发中,Ant脚本可以被定制以满足各种复杂的构建需求,确保项目的构建过程自动化、可重复且高效...

    利用ant脚本 自动构建svn增量.docx

    【Ant脚本自动构建SVN增量】是一种高效且节省资源的软件开发实践,它使得开发和测试团队能够自动化处理从代码提交到构建、打包、再到部署的整个过程。使用Ant,一个基于XML的构建工具,可以创建可重复执行的脚本来...

    SVN+ant 服务器代码打包编译流程详解,内含详细安装以及操作说明

    SVN帮助团队协作并追踪代码变更,而Ant则通过XML脚本实现了编译、打包等任务的自动化。通过合理配置build.xml和build.properties,你可以轻松定制符合项目需求的构建流程。对于初学者而言,理解这两个工具的原理和...

    antsvn更新打包部署提交自动化

    标题中的“antsvn更新打包部署提交自动化”涉及的是在软件开发过程中如何利用Ant(一个Java构建工具)和Subversion(SVN,版本控制系统)实现自动化的构建、更新、打包、部署和提交流程。这个过程旨在提高开发效率,...

    ant获取SVN版本信息的jar包xmltask以及安装,使用方法

    这个jar包(xmltask.jar)提供了一种方式,使得我们可以在Ant脚本中添加、删除、修改XML元素,这对于读取和处理SVN版本信息非常有用,因为SVN的版本信息通常存储在XML格式的svn:log属性中。 要使用XMLTask,首先...

    ant学习之集成svn

    4. 自动化工作流:结合Ant的其他任务,如编译、测试和打包,可以创建一个完整的自动化工作流,其中包括从SVN仓库获取最新代码,执行构建,然后如果一切顺利,将变更提交回去。 5. 错误处理和日志记录:确保在执行...

    基于Jmeter+Ant+SVN+Jenkins实现接口自动化测试

    在接口自动化测试中,Ant可以帮助我们编译测试代码、打包测试套件,并将其部署到测试环境中。 2. **Ant应用**: - **编写build.xml文件**:定义构建任务,如编译、测试、打包、部署等。 - **调用JMeter进行测试**...

    自动获取svn代码并且编译发布

    标题和描述中提到的“自动获取svn代码并且编译发布”是一种常见的持续集成(CI)实践,它涉及自动化从版本控制系统获取源代码、构建应用程序、并进行发布的过程。以下是这个流程涉及的关键知识点: 1. **Subversion ...

    ant打包的代码,包括从svn上获取代码

    在本项目中,Ant被用来执行自动化任务,包括从Subversion(SVN)版本控制系统中获取源代码,并对代码进行打包。 Subversion是一个开源的版本控制系统,用于管理软件项目的源代码。它允许开发人员在多个时间点保存...

    ant相关-svn-分支

    要在Ant脚本中使用SVN功能,我们需要将`svnant.jar`添加到Ant的类路径中,然后定义一个`subversion`类型的属性,指定SVN的可执行文件路径。 在Android或Adobe AIR项目中,我们可能需要在构建流程中拉取最新代码,这...

    ant自动化发布脚本

    利用ant,自动化发布工程。具体过程包括:备份之前发布的工程,从svn checkout工程,编译工程,打包工程,关闭web服务器,删除已发布在web服务器的工程,复制打包的工程到web服务器,解压工程,启动web服务器。

    Jenkins+SVN+Ant持续集成环境配置笔记.pdf

    Jenkins是一种开源的持续集成和持续交付的自动化服务器,可以帮助开发者快速发现和解决缺陷,提高软件质量并缩短发布周期。SVN(Subversion)是一种版本控制系统,用于管理源代码的版本历史,支持开发者团队协作开发...

    Ant SVN依赖JAR包

    Ant是一个基于XML的构建工具,用于自动化Java项目构建、编译、测试和部署等任务。而SVN则是一个版本控制系统,用于管理软件项目的源代码版本,使得开发者可以协同工作并追踪代码更改历史。当使用Ant进行构建时,有时...

    WEB项目自动化编译文件

    "WEB项目自动化编译文件"指的是用于自动执行构建过程的配置文件和脚本,它们通常包括了一系列的任务,如源代码的编译、资源文件的处理、依赖库的管理、测试的执行以及最终产品的打包等。在提供的文件名中,`build....

    使用svnant插件让ant支持从svn更新项目

    通过使用svnant,开发者可以避免手动执行SVN命令,而是通过Ant脚本统一管理和执行这些操作,使得版本控制成为构建过程的一部分,从而提升整体的开发流程自动化程度。 总的来说,"使用svnant插件让ant支持从svn更新...

    Ant+Svn打包Web工程

    同时,你需要下载并配置Subversion客户端,如TortoiseSVN。 2. **获取项目源码**:使用Svn,通过`svn checkout`命令从远程仓库克隆Web工程的源码到本地。这将获取项目的所有文件和版本历史。 3. **Ant构建文件**:...

    Ant 脚本详解

    总结来说,Ant脚本是Java开发中的一个重要工具,它通过XML配置文件驱动构建过程,实现了编译、打包等自动化任务。通过熟练掌握Ant,开发人员可以提高工作效率,确保构建的可靠性和一致性。在学习Ant的过程中,实践是...

    ant svn插件jar包

    在软件开发过程中,版本控制工具Subversion(SVN)被广泛用于管理项目代码,而Apache Ant则是一个流行的Java构建工具,用于自动化构建、测试和部署任务。Ant SVN插件是将这两者结合的关键,它允许Ant脚本直接与SVN...

    .Ant安装编译操作手册

    - **编写目的**:本文档旨在指导软件发布人员如何正确安装与配置Apache Ant,解决在安装与使用过程中可能遇到的问题,确保能够顺利地使用Ant对Flex/Java工程项目进行自动化编译与打包。 #### 二、环境说明 - **Ant...

Global site tag (gtag.js) - Google Analytics