使用Ant生成JBoss上部署项目的脚本
用Ant脚本打包部署项目,生成Jboss上部署后的文件信息.(跟MyEclipse部署到Jboss的效果一样)
搞了一天多..Ant不是很熟..贴个备忘下..
svn.lib.path=../../lib svn.dist.path=../../dist svn.target.lib=${svn.dist.path}/lib svn.target.deploy=${svn.dist.path}/deploy target.war.file=${svn.target.deploy}/EFrameWeb.war busi.jars=e_workflowclient.jar,jbpmengineclient.jar
<project basedir="." default="deploy" name="EFrameWeb"> <property environment="env" /> <!-- 引用属性文件的属性定义 --> <property file="build.properties" /> <property name="debuglevel" value="source,lines,vars" /> <property name="target" value="1.6" /> <property name="source" value="1.6" /> <!-- 定义WebRoot路径 --> <property name="WebRoot.dir" value="${basedir}/WebRoot"/> <!-- 定义编译路径 --> <property name="compile.dir" value="${WebRoot.dir}/WEB-INF/classes"/> <!-- 定义源代码路径 --> <property name="src.dir" value="${basedir}/src"/> <!-- 定义项目所用到的其他包 --> <property name="lib.dir" value="${WebRoot.dir}/WEB-INF/lib"/> <!-- 定义生成的war包的classes路径 --> <property name="target.war.file.classes" value="${target.war.file}/WEB-INF/classes"/> <!-- 定义生成的war包的lib路径--> <property name="target.war.file.lib" value="${target.war.file}/WEB-INF/lib"/> <path id="appAPI.classpath"> <!-- 包含项目中涉及到的业务包和工具包 --> <fileset dir="${svn.target.lib}"> <include name="**/*.jar"/> </fileset> <!-- 包含项目中涉及到第三方开源包 --> <fileset dir="${svn.lib.path}"> <include name="**/*.jar" /> </fileset> <!-- 包含存在项目自身lib目录下的包 --> <fileset dir="${lib.dir}"> <include name="**/*.jar" /> </fileset> </path> <target name="clean"> <delete dir="${compile.dir}" /> <delete dir="${target.war.file}/" /> </target> <target name="init" depends="clean"> <mkdir dir="${target.war.file}" /> <mkdir dir="${compile.dir}" /> <!-- 属性信息 --> <echo message="${ant.project.name}: ${ant.file}" /> <!-- 编译程序 --> <javac debug="true" includeantruntime="false" debuglevel="${debuglevel}" encoding="GBK" destdir="${compile.dir}" source="${source}" target="${target}"> <src path="${src.dir}" /> <classpath refid="appAPI.classpath" /> </javac> <!-- 拷贝WebRoot下的东西 --> <copy includeemptydirs="false" todir="${target.war.file}"> <fileset dir="${WebRoot.dir}"> <exclude name="**/.svn" /> <exclude name="**/*.launch" /> </fileset> </copy> <!-- 拷贝项目classses非编译文件 --> <copy includeemptydirs="false" todir="${target.war.file.classes}"> <fileset dir="${src.dir}"> <exclude name="**/*.launch" /> <exclude name="**/*.java" /> <exclude name="**/.svn" /> </fileset> </copy> <!-- 拷贝项目所依赖的业务包 --> <copy includeemptydirs="false" todir="${target.war.file.lib}"> <fileset dir="${svn.target.lib}" includes="${busi.jars}"/> </copy> </target> <target name="deploy" depends="init"></target> </project>