上个项目中写的Ant build文件

项目

一、上一个项目中写的,可以编译、自动化测试、打包的build.xml

<?xml version="1.0"?>
<project name="SimulatorEL" basedir="." default="all">
<!-- edit by YangHuaWei -->

<property name="build.dir" value="classes"/>
<property name="lib.dir" value="lib"/>
<property name="dist.dir" value="dist"/>
<property name="source.dir" value="./SimulatorEL/src"/>
<property name="testSrc.dir" value="./SimulatorEL/test"/>

<property name="report.dir" value="report" />
<property name="report_html.dir" value="${report.dir}/html" />

<property name="cvs.repository" value=":pserver:yanghw:cvs@localhost:/usr/local/cvsroot"/>
<property name="cvs.package" value="SimulatorEL"/>

<property name="common.src" value="Common"/>
<property name="common.class" value="CommonClass"/>

<property name="release_AP.dir" value="SimAP/SimulatorEL/AP"/>

<path id="project.classpath">
<fileset dir="${lib.dir}">
<include name="**/*.jar"/>
</fileset>
<pathelement path="${build.dir}"/>
</path>

<target name="init" description="Prepare for build">
<mkdir dir="${build.dir}"/>
<mkdir dir="${dist.dir}"/>
<!--mkdir dir="${logdir}"/-->
<!--mkdir dir="${report.dir}"/-->
<mkdir dir="${report_html.dir}"/>
</target>

<target name="clean" description="Clean all build products">
<delete dir="${build.dir}" quiet="true"/>
<delete dir="${dist.dir}" quiet="true"/>
<delete dir="SimulatorEL" quiet="true"/>
<delete dir="${report.dir}" quiet="true"/>

<delete dir="${common.class}" quiet="true"/>
</target>

<target name="compile" depends="init,checkout,common_build" description="Compile application">
<javac srcdir="${source.dir}" destdir="${build.dir}" encoding="EUC-JP"
includes="**/*.java" debug="on" deprecation="on">
<classpath refid="project.classpath"/>
</javac>
</target>

<target name="compile_test" depends="compile" description="compile the classes of test">
<javac srcdir="${testSrc.dir}" destdir="${build.dir}" encoding="EUC-JP"
includes="**/*.java" debug="on" deprecation="on">
<classpath refid="project.classpath"/>
</javac>
</target>

<target name="test" depends="compile_test" description="Run unit tests">
<!--delete dir="${junit.results}"/>
<mkdir dir="${junit.results}"/-->
<tstamp/>
<junit fork="yes" haltonfailure="no">
<jvmarg value="-Duser.dir=/home/docomo/simBuild/SimulatorEL"/>
<classpath refid="project.classpath"/>
<formatter type="xml" usefile="true"/>
<!--formatter type="xml"/-->
<batchtest todir="${report.dir}">
<fileset dir="${build.dir}" includes="**/*Test.class"/>
</batchtest>
</junit>

<junitreport todir="${report.dir}">
<fileset dir="${report.dir}">
<include name="TEST-*.xml" />
</fileset>
<report format="frames" todir="${report_html.dir}" />
</junitreport>
<jar jarfile="${report.dir}/SimulatorELTestReport-${DSTAMP}-${TSTAMP}.zip" basedir="${report_html.dir}"/>
</target>

<target name="mail" depends="test">
<mail mailhost="192.168.98.1" subject="Test report">
<from address="yanghw@sz.cathay.jp"/>
<to address="docomo-dev@sz.cathay.jp"/>
<message>The nightly build/test has completed</message>
<fileset dir="${report.dir}">
<include name="*.zip"/>
</fileset>
</mail>
</target>

<target name="common_build" description="Build common module">
<!-- checkout common module from cvs -->
<delete dir="${common.src}" quiet="true"/>
<cvs cvsroot="${cvs.repository}" package="Common" dest="."/>

<!-- compile and jar the common module -->
<mkdir dir="${common.class}"/>
<javac srcdir="${cttcommsrc}" destdir="${common.class}" excludes="**/*Test.java" encoding="EUC-JP">
<classpath refid="project.classpath"/>
</javac>
<delete file="${lib.dir}/common.jar" quiet="true"/>
<jar jarfile="${lib.dir}/common.jar" basedir="${common.class}"/>
</target>

<target name="tar" depends="compile,jar" description="Creates a tar archive">
<delete dir="SimAP" quiet="true"/>
<mkdir dir="${release_AP.dir}/src"/>
<mkdir dir="${release_AP.dir}/conf"/>
<mkdir dir="${release_AP.dir}/lib"/>
<!--mkdir dir="SimAP/SimulatorEL/AP/conf"/-->

<copydir src="${source.dir}" dest="${release_AP.dir}/src" includes="**/*.java"/>

<copydir src="SimulatorEL/config/SimulatorEL/AP/conf" dest="${release_AP.dir}/conf"/>

<!--copydir src="SimulatorEL/images" dest="SimAP/SimulatorEL/AP/conf/images"/-->

<copy file="${dist.dir}/SimulatorEL.jar" todir="${release_AP.dir}/lib"/>

<copy todir="${release_AP.dir}/lib">
<fileset dir="${lib.dir}">
<include name="emsutil.jar"/>
<include name="common.jar"/>
</fileset>
</copy>

<tar tarfile="${dist.dir}/SimulatorEL.tar" basedir="SimAP"/>
<gzip zipfile="${dist.dir}/SimulatorEL.tar.gz" src="${dist.dir}/SimulatorEL.tar"/>
</target>

<target name="jar">
<jar jarfile="${dist.dir}/SimulatorEL.jar">
<fileset dir="${build.dir}">
<exclude name="**/*Test*"/>
</fileset>
</jar>
</target>

<target name="checkout" description="Update package from CVS">
<cvs cvsroot="${cvs.repository}" package="${cvs.package}" dest="."/>
</target>

<target name="all" depends="clean,mail,tar" description="Build application"/>

</project>

二、在Linux下写一个shell文件autoTest.sh

cd ~/build

source ~/.docomo.profile

ant mail

三、加入到crontab中,每天自动运行

# crontab -e

4 9 * * * /home/docomo/build/autoTest.sh

crontab的使用参见收藏的文章

时间: 2024-08-30 22:16:11

上个项目中写的Ant build文件的相关文章

iOS 项目中的version和build 详解_IOS

iOS 项目中的version和build Version在plist文件中的key是"CFBundleShortVersionString",标识应用程序的发布版本号,和AppStore上的版本号保持一致.该版本的版本号是三个分隔的整数组成的字符串.第一个整数代表重大修改的版本,如实现新的功能或重大变化的修订.第二个整数表示的修订,实现较突出的特点.第三个整数代表维护版本 Build在plist文件中的key是"CFBundleVersion",标示(发布或者未发

在ssh项目中,把一个word文件上传到数据库的blob中,如何读取出来

问题描述 在ssh项目中,把一个word文件上传到数据库的blob中,如何读取出来mysql中的blob只能存放图片吗?要是能存别的格式的文件的话,怎么打开啊? 问题补充:那怎么才能直接打开这个word文档呢 解决方案 问题补充:那怎么才能直接打开这个word文档呢 你读出来写成world文件啊···xx.doc ,应该这样可以吧·· BufferedOutputStream bos = new BufferedOutputStream( new FileOutputStream("/xx.do

【Filter 不登陆无法访问】web项目中写一个过滤器实现用户不登陆,直接给链接,无法进入页面的功能

在web项目中写一个过滤器实现用户不登陆,直接给链接,无法进入页面,而重定向到登陆界面的功能. 项目是用springMVC+spring+hibernate实现 (和这个没有多大关系) 第一步: 首先写一个登录权限过滤类--LoginFilter类实现Filter接口 1 package com.agen.util; 2 3 import java.io.IOException; 4 5 import javax.servlet.Filter; 6 import javax.servlet.Fi

url-?求问:structs项目中,如何执行删除文件操作URL且不发生跳转

问题描述 ?求问:structs项目中,如何执行删除文件操作URL且不发生跳转 我想在web端执行删除文件操作,一开始想参考表单验证中, url:'', success:funtion(){} 但未能成功,于是使用了window.location.href,结果删除功能确实实现了,但删错操作后,页面总是会跳转到一个空页面上. 求问各位大神有什么办法,给个提示.谢谢! js代码: window.location.href = 'deleteFile?id='+rs[0].data.fileId;

Maven项目中获取classpath和资源文件的路径

 假设资源文件放在maven工程的 src/main/resources 资源文件夹下,源码文件放在 src/main/java/下, 那么java文件夹和resources文件夹在运行时就是classpath的真实位置,如果 有一个文件位于 src/main/resources/test.txt 有一个类位于 src/main/java/com/qunar/MyClass.java FILE_NAME = "test.txt" 通过如下代码 MyClass.class.getCl

在Hudson中,使用ant自动对安卓项目编译打包apk

      本文对如何在hudson中配置ant编译打包apk进行说明,主要包括build.xml文件的编写.环境的配置.在Hudson中创建任务. 一.为安卓项目创建build.xml文件 1.打开cmd进入sdk目录下的tools目录,输入: android.bat list target  来查询我们现有的版本list有哪些.如下图: 途中用红框圈出的 id 与蓝框圈出的版本号对应关系,下面需要用到. 2.打开安卓项目工程下的 project.properties 文件,查看target

asp.net MVC项目中 没有easyui插件的智能提示

问题描述 asp.net MVC项目中 没有easyui插件的智能提示 5C vs2015 中的mvc4项目,已经分别把jQuery.min.js jquery.easyui.min.jseasyui-lang-zh_CN.js依次拖入,写js代码的时候 智能提示只有jquery中的属性和方法 没有easyui的(例如$.messager就出不来智能提示),但是可以正常执行出来插件效果,尝试编辑cshtml.html格式的文件都不提示,尝试把 jquery.easyui.min.js的文件名改为

spring mvc-SpringMVC web项目中如何引入js,css等文件

问题描述 SpringMVC web项目中如何引入js,css等文件 在springmvc的web项目中,如何在html文件中引入本地的jscss等文件,试了很多种方法,发现路经都不对,都报404 Notfound的错.项目的目录结构:同时在springmvc-servlet.xml中添加了配置:在index.html中如此引用js: 然后每次都说找不到这个js文件. 解决方案 web项目js css静态文件缓存解决引入外部css ,js文件 解决方案二: 貌似要放在WebRoot底下新建一个文

.Net项目中动态加载dll问题

问题描述 大家好,目前我们有一个ASP.NET的项目,在这个项目中我们封装了一些计算模型的类库,也就是说,在项目中的bin目录下,不仅存放了一些Asp.Net的基础支撑dll,还有一些我们自己封装的模型的dll,以便在后台程序中通过反射动态调用,但是现在客户有一个这样的需求,通过前台动态上传一些其他的计算模型的dll到系统中(bin目录下),然后在后台能够自动通过反射机制调用这些dll,但是目前我发现当我通过程序将新的dll文件上传到项目的bin目录中后,项目便无法再继续(sessiontime