环保

强势推荐ANT小蚂蚁

之前就知道ANT这个小蚂蚁,一直没有用过,这两天,下了点功夫,写了一个ANT的脚本。功能还行,可以完成同步svn代码、编译代码、打包代码、上传、部署的功能。直接上干货,看代码。[code]#JDK homejdk.home=/opt/Java/jdk1.6.0_33#webapp namewebapp.name=pmeappproject.name=pmeapp#svnsvn.url=http://127.0.0.1:9344/svn/pmeapp/trunksvn.uname=dapengsvn.pwd=dapengpwd#warwar.exclude=war.exclude.classes=#ftpftp.server=127.0.0.1ftp.password=dapengpwdftp.userid=dapengftp.path=/opt/ftp/#sshssh.host=127.0.0.1ssh.path=/opt/tomcat6/webappsssh.pwd=dapengpwdssh.uname=dapeng#sshssh.path.webapp=/opt/tomcat6/webappsssh.server.bin=/opt/tomcat6/binssh.cmd.sshClean=rm -rf /opt/tomcat6/webapps/${webapp.name}/ssh.server.start=/opt/tomcat6/bin/startup.shssh.server.stop=/opt/tomcat6/bin/shutdown.sh[/code]另外一个是关键中的核心[sourcecode]<project basedir=’.’ default=’usage’ name=’${project.name}’> <!– =================================================================== –> <!– 下句是import进ant属性配置文件,properties文件里存放基本的配置变量. –> <!– 该变量可以在build.xml中直接引用. –> <!– =================================================================== –> <property file=’ant.properties’/> <!– =================================================================== –> <!– 以下的几个属性是系统自带的,初始了tstamp之后,它们就有值了 –> <!– ${DSTAMP} ${TSTAMP} ${TODAY} –> <tstamp/> <property name=’war.name’ value=’${webapp.name}’ /> <!– =================================================================== –> <!– Init –> <!– =================================================================== –> <target name=’init’> <echo message=’————————————-‘/> <echo message=’start ant build ${project.name} – ${DSTAMP}${TSTAMP}’/> <property name=’debug’ value=’off’/> <property name=’optimize’ value=’on’/> <property name=’deprecation’ value=’on’/> <!– java源文件路径 –> <property name=’src.dir’ value=’${basedir}/src’/> <!– jar包路径 –> <property name=’lib.dir’ value=’${basedir}/WebRoot/WEB-INF/lib’/> <!– webapp路径 –> <property name=’webapp.dir’ value=’${basedir}/WebRoot’/> <!– 准备源文件路径 –> <property name=’build.src’ value=’${basedir}/AntBuild/build’/> <!– 编译源文件路径 –> <property name=’build.dest’ value=’${basedir}/AntBuild/bin’/> <!– 准备webapp文件路径 –> <property name=’buildwar.dest’ value=’${basedir}/AntBuild/warsrc’/> <!– 打包war文件路径 –> <property name=’war.dest’ value=’${basedir}/AntBuild/war’/> <!– jre lib路径 –> <property name=’jre.lib’ value=’${jdk.home}/jre/lib’/> <!– 引用svn task文件,使用svn任务可以使用–> <typedef resource=’org/tigris/subversion/svnant/svnantlib.xml’ /> <!– 设置svn相关属性 –> <svnSetting id=’svn.setting’ svnkit=’true’ username=’${svn.uname}’ password=’${svn.pwd}’ javahl=’false’ /> <!– classpath –> <path id=’classpath’> <!–web.lib–> <fileset dir=’e:/lib’> <include name=’/*.jar’/> </fileset> <fileset dir=’${jre.lib}’> <include name=’/.jar’/> </fileset> <fileset dir=’${lib.dir}’>…