build.xml 3.29 KB
<?xml version="1.0" encoding="UTF-8" ?>
<project name="SMCServer" default="dist" basedir=".">

	<property file="build.properties" />

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

	<target name="clean" description="clean the build dir">
		<delete dir="${build.dir}" />
	</target>

	<target name="init" description="create the working directory">
		<mkdir dir="${appserver.dir}" />
		<mkdir dir="${appserver.dir}/classes" />
		<mkdir dir="${appserver.dir}/libs" />
		<mkdir dir="${appserver.dir}/bin" />
		<mkdir dir="${appserver.dir}/config" />
		<mkdir dir="${appserver.dir}/logs" />
	</target>

	<target name="compile" depends="clean,init" description="compile the java code and copy the config files">
		<javac srcdir="${src.dir}" destdir="${appserver.dir}/classes">
			<compilerarg line="-encoding UTF-8 " />
			<compilerarg value="-Xlint:unchecked" />
			<compilerarg value="-Xlint:deprecation" />
			<classpath refid="classpath" />
		</javac>
		<copy todir="${appserver.dir}/classes">
			<fileset dir="${src.dir}">
				<include name="**/*.xml" />
			</fileset>
			<fileset dir="${config.dir}">
				<include name="**/*.xml" />
			</fileset>
		</copy>
		<copy todir="${appserver.dir}/config">
			<fileset dir="${config.dir}">
				<include name="**/*.properties" />
				<include name="**/*.xml" />
			</fileset>
		</copy>
		<copy todir="${appserver.dir}/bin">
			<fileset dir="${bin.dir}">
				<include name="**/*" />
			</fileset>
		</copy>
	</target>

	<target name="create-manifest" description="create the MANIFEST.MF file">
		<tstamp />
		<manifest file="${build.dir}/MANIFEST.MF">
			<attribute name="Build-By" value="${user.name}" />
			<attribute name="Build-On" value="${DSTAMP}${TSTAMP}" />
			<attribute name="Create-By" value="${ant.version}" />
			<attribute name="Specification-Title" value="${groupware-name}" />
			<attribute name="Specification-Version" value="${version}" />
			<attribute name="Specification-Vendor" value="${vendor-name}" />
			<attribute name="Implementation-Title" value="${groupware-name}" />
			<attribute name="Implementation-Version" value="${sub.version}" />
			<attribute name="Implementation-Vendor" value="${vendor-name}" />
		</manifest>
	</target>

	<target name="create-jarfile" depends="compile,create-manifest" description="create BomcManagerCenter.jar file">
		<jar destfile="${appserver.dir}/libs/${jar.filename}" index="true" manifest="${build.dir}/MANIFEST.MF">
			<fileset dir="${appserver.dir}/classes" />
		</jar>

		<delete file="${build.dir}/MANIFEST.MF" />
		<delete dir="${appserver.dir}/classes" />

		<copy todir="${appserver.dir}/libs">
			<fileset dir="${lib.dir}">
				<include name="**/*.jar" />
				<include name="**/*.zip" />
			</fileset>
		</copy>
	</target>

	<target name="create-tarfile" depends="create-jarfile" description="create BomcManagerCenter.tar file">
		<mkdir dir="${build.dir}/temp/BmcServer" />
		<move todir="${build.dir}/temp/BmcServer">
			<fileset dir="${appserver.dir}" />
		</move>
		<move file="${build.dir}/temp" tofile="${appserver.dir}" />

		<tar destfile="${build.dir}/${tar.filename}" basedir="${appserver.dir}" />
		<delete dir="${appserver.dir}" />
	</target>

	<target name="dist" depends="create-tarfile" description="clean the temporary files">
	</target>
</project>