1.配置SVN地址如: svn://localhost/test
2.安装TortoiseSVN 并checkout目录到 E:/www
3. 修改版本库svn/hooks/目录下的 post-commit.tmpl 文件名为 post-commit.bat,并添加以下代码
@echo off
SET REPOS=%1
SET USER=%2
SET SVN="C:/Java/svn/bin/svn.exe"
SET DIR="E:/www"
Set ANT="C:\Java\ant\bin\ant.bat"
(call %SVN% update %DIR% --non-interactive --username admin --password admin)
(call %ANT% -buildfile e:\www\build.xml) #生成classes文件
4. windows Ant build.xml文件配置
<?xml version="1.0" encoding="utf-8" ?>
<project name="web" default="compile">
<property name="classes.dir" value="WebRoot/WEB-INF/classes" />
<property name="src.dir" value="src" />
<property name="lib.dir" value="WebRoot/WEB-INF/lib" />
<property name="tomcat.home" value="C:\Java\tomcat6.0" />
<path id="classpath">
<fileset dir="${lib.dir}" includes="**/*.jar" />
<fileset dir="${tomcat.home}/lib" includes="**/*.jar" />
</path>
<target name="clean">
<delete dir="${classes.dir}" />
</target>
<target name="compile" depends="clean">
<mkdir dir="${classes.dir}" />
<javac srcdir="${src.dir}" destdir="${classes.dir}" encoding="UTF-8" debug="on">
<classpath refid="classpath" />
</javac>
<copy todir="${classes.dir}">
<fileset dir="${src.dir}" excludes="**/*.java" />
</copy>
</target>
</project>
5.linux ant build.xml
<?xml version="1.0" encoding="utf-8" ?>
<project name="web" default="compile">
<property environment="env"/>
<property name="classes.dir" value="web/WEB-INF/classes" />
<property name="src.dir" value="src" />
<property name="lib.dir" value="web/WEB-INF/lib" />
<property name="tomcat.home" value="/data/resin-pro-3.1.9" />
<property name="java.home" value="${env.JAVA_HOME}" />
<path id="classpath">
<fileset dir="${lib.dir}" includes="**/*.jar" />
<fileset dir="${tomcat.home}/lib" includes="**/*.jar" />
</path>
<target name="clean">
<delete dir="${classes.dir}" />
</target>
<target name="compile" depends="clean">
<mkdir dir="${classes.dir}" />
<javac srcdir="${src.dir}" destdir="${classes.dir}" debug="on" encoding="UTF-8">
<classpath refid="classpath" />
</javac>
<copy todir="${classes.dir}">
<fileset dir="${src.dir}" excludes="**/*.java" />
</copy>
</target>
</project>
分享到:
相关推荐
在这个SVN+ant服务器代码打包编译流程中,我们将深入探讨这两个工具的集成使用,以及如何通过build.xml和build.properties文件实现自动化编译。 首先,让我们了解SVN的安装和配置。在Windows上,你可以下载...
Jenkins是一种开源的持续集成和持续交付的自动化服务器,可以帮助开发者快速发现和解决缺陷,提高软件质量并缩短发布周期。SVN(Subversion)是一种版本控制系统,用于管理源代码的版本历史,支持开发者团队协作开发...
Ant是一个由Apache基金会开发的Java构建工具,它允许开发者通过XML配置文件定义构建任务,实现编译、打包、测试等流程的自动化。另一方面,SVN(Subversion)是一种版本控制系统,用于管理源代码的版本变更,方便...
首先,Ant是一个基于Java和XML的构建工具,它的主要功能是管理和自动化项目的构建过程。Ant通过一个名为build.xml的XML配置文件来定义一系列的任务,这些任务涵盖了从编译源代码、打包、部署到运行测试等多种操作。...
总之,利用Ant自动化从SVN下载代码是一个实用的技巧,可以帮助开发者和团队提高效率,尤其是在需要频繁更新代码或执行持续集成的过程中。通过理解Ant的构建文件和任务,以及如何与SVN交互,你可以构建出符合自己需求...
### Jenkins+SVN+Ant持续集成环境配置笔记 #### 一、引言 随着软件开发项目的日益复杂化,持续集成...未来还可以考虑引入更多自动化工具和技术,如 Docker、Kubernetes 等,以进一步提升软件开发的自动化水平。
这里我们将详细介绍如何设置SVN服务器,实现代码的自动更新、编译和部署,以及如何利用Ant工具进行自动化构建。 1. **安装与配置SVN服务器** - 首先,你需要下载并安装VisualSVN Server,这是一个在Windows上运行...
6. **自动化脚本**:为了实现自动化,开发者可能会编写批处理脚本或者使用构建工具(如Ant、Maven、Gradle等)的插件,来自动执行上述步骤,特别是当项目很大或者频繁发布更新时。 标签中的“源码”表明了这个过程...
其中,Jenkins作为一款开源的自动化构建和测试工具,提供了丰富的插件支持,能够实现从代码提交到部署的自动化流水线。而Subversion(SVN),作为一种集中式版本控制系统,被广泛用于代码版本管理和团队协作。本文将...
这个工具可能使用了如Ant、Maven或者Gradle等构建工具的自定义任务来自动化整个过程,确保增量打包的准确性和一致性。 为了有效地使用这个程序,你需要了解和配置以下几点: - **SVN客户端**:确保你有一个本地...
Apache Ant是一个开源的Java库和命令行工具,用于自动化软件构建过程。它通过XML文件定义构建过程中的任务和依赖关系,支持跨平台操作,能够在不同的操作系统上执行相同的构建任务。由于Ant是基于Java的,因此在安装...
Jenkins是一个流行的开源自动化服务器,可以帮助我们实现持续集成和持续交付(CD)。 为了玩转持续化集成之Jenkins,我们首先需要了解一些基础知识和操作步骤。首先,团队开发过程中常用SVN或GIT来管理代码。对于...
- **简介**:Maven是另一种流行的Java项目构建工具,它引入了标准化的项目结构和依赖管理。 - **环境配置**:安装Maven并配置Maven的`settings.xml`文件以设置本地仓库和远程仓库地址。 - **第一个Maven项目**:...
Ant是一个基于Java的构建工具,用于自动化编译、测试和打包项目。 在开始部署和编译Spark源代码之前,需要确保已经安装了JDK,并且能够熟练使用MyEclipse。此外,建议对SVN版本控制工具有基本的了解,以便能够从SVN...
Hudson作为一款开源的持续集成工具,能够帮助团队自动化构建、测试以及部署流程,从而有效提高工作效率。本文将详细介绍如何在本地计算机上配置Hudson,包括所需软件的安装与配置过程。 #### 二、准备工作 1. **...
它要求项目拥有自动化的构建脚本,例如基于 Maven 或 Ant,以实现构建过程的自动化。当项目代码有变更时,CruiseControl 会自动触发构建,如果构建失败,会通过Email或其他方式通知相关人员。 **二、环境要求** 1. ...
Selenium WebDriver 是一个用于自动化Web应用测试的工具,它直接与浏览器交互,并且能够模拟真实用户的操作。WebDriver2 版本相比于早期版本有着更好的稳定性和兼容性,支持多种编程语言如 Java、Python 等。本文将...