ant打包java工程脚本

hcwei 2020年12月18日 509次浏览
<?xml version="1.0" encoding="UTF-8"?>
<project name="ROOT" default="war" basedir=".">                      
	<property name="build" value="${basedir}/build" />
	<property name="webApp" value="${basedir}/WebContent" />
	<property name="lib" value="${webApp}/WEB-INF/lib" />    
	<property name="build.class" value="${build}/classes" />    

	<!-- 定义CLASSPACH,编译时用到你外部加入的包 -->
	<path id="classpath">
		<fileset dir="${lib}" includes="**/*.jar" />
	</path>

	<!-- 清除旧构建 -->
	<target name="clean">
		<delete dir="${build}" />
		<mkdir dir="${build}" />
		<mkdir dir="${build.class}" />
	</target>
 
	<!-- 定义任务,编译src文件夹中的java文件,编译后的class文件放到创建的文件夹下。 -->
	<target name="compile" depends="clean">
		<javac srcdir="${basedir}/src" destdir="${build.class}" target='1.8' source="1.8" encoding="utf-8" debug="true"  includeantruntime="false">
			<classpath refid="classpath" />
			<compilerarg line="-XDignore.symbol.file"/>
		</javac>

		<!-- 将配置文件复制到class文件目录 -->
                <copy todir="${build.class}" overwrite="true">
                        <fileset dir="${basedir}/config">
                                <include name="**" />
                        </fileset>
                </copy>
	</target>
 
	<!-- 生成WAR包 -->
	<target name="war" depends="compile">
		<war destfile="${build}/${ant.project.name}.war" webxml="${webApp}/WEB-INF/web.xml">
			<fileset dir="WebContent"/>  
			<lib dir="${lib}" />
			<classes dir="${build.class}" />
		</war>
	</target>
</project>