`
cuishuangjia
  • 浏览: 155909 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

利用ant自动从vss下载代码并编译到自动发布

vss 
阅读更多

 

利用ant自动从vss下载代码并编译到自动发布

分类: 计算机相关东西 1540人阅读 评论 (0) 收藏 举报
 项目做了好久,每次都要手工从vss下载代码,再编译,再发布,觉得好麻烦的,以前项目比较忙就没有时间来研究他,昨天无意在网上看到一个基于wls自 动发布过来,个人认为可以改下为我们所用了,由于自己以前对ant这些东西不是蛮了解,只好先硬着头皮到网上找些这方面的资料看看,我想应该比较容易搞定 的吧。
      搞清了ant的一些基本概率,就看看别人写的bulid.xml吧,再改改,试一试,唉,报错,再找到报错的日志,可能是配置文件中有汉字的缘故吧,删除这些注释的东西,再运行下ant,搞定!(基于tomcat发布的)
     如下是bulid.xml的详细列表;
    <project name="oa" basedir="." default="all">
<!--path mapping-->
<property file="build.properties"/>
<property name="name" value="OA"/>
<property name="base.dir" value="checkout/${name}/oa-web-app"/>
<property name="src.dir" value="${base.dir}/src"/>
<property name="bin.dir" value="${base.dir}/war/WEB-INF/classes"/>
<property name="lib.dir" value="${base.dir}/war/WEB-INF/lib"/>
<property name="dist.dir" value="D:/oaWorkspace/jakarta-tomcat-5.5.9/webapps/${name}"/>
<property name="hist.dir" value="history/${name}"/>
<property name="appserver.home" value="D:/oaWorkspace/jakarta-tomcat-5.5.9"/>
 
<property name="vss.ssdir" value="D:/oaWorkspace/vss/win32"/>
<property name="vss.svrdir" value="H:"/>
<taskdef name="stop" classname="org.apache.catalina.ant.StopTask">       
 <classpath>
  <path location="${appserver.home}/server/lib/catalina-ant.jar"/>       
 </classpath>   
</taskdef>
<taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask">       
 <classpath>
  <path location="${appserver.home}/server/lib/catalina-ant.jar"/>       
 </classpath>   
</taskdef>
<taskdef name="start" classname="org.apache.catalina.ant.StartTask">       
 <classpath>
  <path location="${appserver.home}/server/lib/catalina-ant.jar"/>       
 </classpath>   
</taskdef>
<path id="appClassPath">
 <pathelement path="${java.class.path}"/>
 <fileset dir="${lib.dir}">
  <include name="*.jar"/>
 </fileset>
</path>
<target name="getVssCode">
<tstamp>
<format property="TODAY" pattern="yyyy-MM-dd" />
</tstamp>
<echo message="Getting latest source codes from: ${TODAY}" />
<echo message="${vss.svrdir}" />
<vssget vsspath="/E.OA系统产品/5.开发库/1.代码库/1.源代码/OA/oa-web-app" localpath="${base.dir}" login="name,password"
ssdir="${vss.ssdir}" serverPath="${vss.svrdir}" autoresponse="Y" recursive="true" quiet="true" />
</target>

<target name="all" depends="compile,deploy,backup" description="Build application"/>
<!--Clean-->
<target name="clean">
 <delete includeEmptyDirs="true">
  <fileset dir="${base.dir}" />
 </delete>
</target>
<!--Init-->
<target name="init">
 <mkdir dir="${base.dir}"/>
</target>
<!--Compile-->
<target name="compile">
 <javac srcdir="${src.dir}" destdir="${bin.dir}" fork="on" optimize="off" deprecation="on" memoryMaximumSize="128m">
  <classpath refid="appClassPath"/>
 </javac>
    <native2ascii src="${src.dir}" dest="${bin.dir}"
            includes="*_zh_CN.properties" excludes="*displaytag_zh_CN.properties" encoding="GB2312" />
    <native2ascii src="${src.dir}" dest="${bin.dir}"
            includes="*displaytag_zh_CN.properties" encoding="UTF-8" />       
    <copy todir="${bin.dir}">
  <fileset dir="${src.dir}">
   <exclude name="**/*.java"/>
   <include name="**/*.xml"/>
  </fileset>
 </copy>
 <copy todir="${bin.dir}">
  <fileset dir="${src.dir}">
                 <exclude name="*_zh_CN.properties"/>
                 <include name="*.properties"/>
         </fileset>
 </copy>
</target>
<!--Deploy-->
<target name="deploy">
    <delete includeEmptyDirs="true">
        <fileset dir="${dist.dir}/WEB-INF/classes"/>
    </delete>
    <copy todir="${dist.dir}">
  <fileset dir="${base.dir}/war"/>
 </copy>
</target>

<!--Backup-->
<target name="backup">
    <tstamp/>
    <mkdir dir="${hist.dir}/${TODAY}"/>
    <mkdir dir="${hist.dir}/${TODAY}/coding"/>
    <mkdir dir="${hist.dir}/${TODAY}/deploy"/>
    <mkdir dir="${hist.dir}/${TODAY}/db"/>
    <copy todir="${hist.dir}/${TODAY}/coding">
  <fileset dir="${base.dir}"/>
 </copy>
    <copy todir="${hist.dir}/${TODAY}/deploy">
  <fileset dir="${dist.dir}"/>
 </copy>
</target>
<target name="stop" description="Stop application in Tomcat">       
 <stop url="${tomcat.manager.url}"                
  username="${tomcat.manager.username}"                
  password="${tomcat.manager.password}"                
  path="/${name}"/>   
</target>
<target name="reload" description="Reload application in Tomcat">       
 <reload url="${tomcat.manager.url}"                
  username="${tomcat.manager.username}"                
  password="${tomcat.manager.password}"                
  path="/${name}"/>   
</target>
<target name="start" description="start application in Tomcat">       
 <start url="${tomcat.manager.url}"                
  username="${tomcat.manager.username}"                
  password="${tomcat.manager.password}"                
  path="/${name}"/>   
</target>
</project>
少了一个文件build.properties的内容
# Ant properties for building the spring
user.home=D:/oaWorkspace
appappserver.home=${user.home}/jakarta-tomcat-5.5.9
deploy.path=${appserver.home}/webapps
tomcat.manager.url=http://127.0.0.1/manager
tomcat.manager.username=manager
tomcat.manager.password=tomcat
分享到:
评论

相关推荐

    ANT自动下载编译部署脚本

    用ant完成VSS自动下载编译部署的脚本

    ANT自动更新工具

    ANT自动更新工具是一种基于Apache Ant构建系统的自动化更新解决方案,它简化了软件开发过程中代码的获取、验证、编译和部署等步骤。Ant是Java开发中常用的一个任务驱动的构建工具,通过XML配置文件来定义和执行各种...

    vss 6.0代码管理

    10. 定期备份:VSS支持自动备份功能,以防数据丢失,这对于任何代码管理系统来说都是基本且必要的。 11. 客户端工具:VSS 6.0提供了直观的图形用户界面,使得操作相对简单,降低了学习曲线。 尽管VSS 6.0在当时是...

    VSS代码库转为GIT库的工具源代码

    【描述】"VSS代码仓库转换为GIT代码仓库工具源代码"说明了这是一个实现自动化迁移的工具,可能包含了用于读取VSS数据库、解析VSS项目历史、将这些信息映射到Git提交,并最终创建一个新的Git仓库的代码。这样的工具...

    VB -- 操作Vss,编译Class,并上传到服务器

    本项目利用Visual Basic(VB)编写了一个工具,实现了对Visual SourceSafe(VSS)的操作,包括签入、牵出和获取代码,自动编译Java源文件为Class字节码,并通过FTP将编译后的文件上传到服务器。这个工具极大地提高了...

    vb控制vss自动发布

    在本场景中,"vb控制vss自动发布"意味着我们需要利用VB编写程序来自动化与VSS相关的操作,包括从VSS中获取源代码、编译代码以及执行定时发布的任务。 首先,要实现VB控制VSS,我们需要了解VSS提供的COM接口。VB可以...

    vb+Vss,自动发布源文件

    这通常涉及到从VSS中检出代码、编译、打包以及部署到目标环境,以此提高开发效率和减少人为错误。 在标签“自动发布源文件”中,我们可以推断这个压缩包可能包含以下内容: 1. VB脚本:使用VB编写的一系列自动化...

    vss使用 代码管理工具的配置

    本篇文章将详细讲解如何配置VSS,并指导你一步步设置自己的代码管理环境。 **1. 安装Visual SourceSafe** 首先,你需要在你的计算机上安装VSS。下载并运行安装程序,按照向导的提示完成安装过程。确保选择正确的...

    vss源代码管理使用方法

    在本主题中,我们将深入探讨如何利用VSS进行源代码管理,包括创建数据库、建立Web应用项目以及将Web项目纳入源代码管理的步骤。 一、创建源代码管理数据库 1. 安装与配置VSS:首先确保你的计算机上已经安装了VSS,...

    vss代码管理工具安装程序

    VSS,全称为Visual SourceSafe,是微软提供的一款源代码管理工具,主要用于团队协作开发中的版本控制。在软件开发过程中,源代码管理是至关重要的,它可以帮助开发者追踪代码的修改历史,协同工作,防止冲突,并且...

    去除VSS代码管理

    然而,标题“去除VSS代码管理”表明这个话题涉及到从项目中移除VSS的相关配置和依赖,以便转换到其他版本控制工具或者完全摆脱VSS。 在C#开发环境中,如果一个项目之前使用了VSS进行代码管理,那么在尝试移除VSS时...

    代码管理VSS使用手册

    VSS会将该文档的副本从数据库中拿到你的工作文件夹(working folder)中,你就可以修改你的文档了。如果其他用户再想对同一文档进行修改,VSS会产生一个信息,告诉他,该文档已被签出(check out),从而避免多人...

    VSS 2005 代码管理器 汉化工具

    VSS 2005 代码管理器 汉化工具

    vb控制vss,批量上传下载

    2. 批量从VSS获取并发布:接着,程序会确定需要发布的文件列表,可能是根据日期或者其他业务逻辑来筛选。然后,它会从VSS中检出这些文件到本地,再进一步将这些文件复制到指定的服务器目录,完成发布过程。这一环节...

    vss 的自动备份插件

    为了解决这个问题,我们可以利用特定的插件来实现自动备份,比如“vss的自动备份插件”。 这款插件的主要目标就是弥补VSS原生功能的不足,它提供了自动化备份方案,可以定时、定条件地自动备份VSS仓库中的所有文件...

    如何实现VSS自动备份的方法

    如何实现的VSS自动备份。 如何实现的VSS自动备份。 如何实现VSS自动备份的方法

    源代码版本控制vss 2005 中文版

    压缩包中的“VSS2005中文包.rar”可能包含VSS 2005的安装程序,而“VSS_2005.part1.rar”至“VSS_2005.part4.rar”则是分卷压缩文件,需要全部下载并解压以获得完整的安装资源。视频讲解部分可以帮助初学者快速理解...

    PB中使用VSS代码管理

    ### PB中使用VSS代码管理知识点详解 #### 一、概述 在软件开发过程中,代码管理是一项非常重要的工作。良好的代码管理不仅可以帮助团队保持代码的整洁性和一致性,还能有效地跟踪和控制版本变化,确保项目的顺利...

    vss服务器端代码管理

    Dynamsoft SourceAnywhere for VSS 5.3.1 Professional Server 破解版

    VS2005 + VSS2005 实现团队开发、源代码管理、版本控制

    一旦数据库创建完成,团队成员可以在各自的开发环境中连接到VSS,将项目导入并进行版本控制。VS2005集成了VSS,使得开发者可以直接在IDE内进行版本控制操作,如添加、删除、修改文件,以及查看历史记录、解决冲突等...

Global site tag (gtag.js) - Google Analytics