◎筱米加步枪◎.Blog

Happy coding

使用Ant生成JBoss上部署项目的脚本

筱米加步枪 posted @ 2011年1月13日 10:49 in [ 开源框架 ] with tags ant 部署 Jboss , 3350 阅读

用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>

 


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter