Skip to content
Snippets Groups Projects
build.xml 2.22 KiB
Newer Older
Florian Fittkau's avatar
Florian Fittkau committed
<?xml version="1.0" encoding="UTF-8"?>
<project name="Common" default="build-all" basedir=".">
	<property name="src.dir" value="src"/>
	<property name="build.dir" value="build"/>
	<property name="jar.dir" value="dist"/>
	
	<property name="test.reports" value="reports"/>
	<property name="test.src" value="test"/>

	<!-- MAIN JOBS -->
	
	<target name="build-all" depends="clean,jar,test" description="Compiles and packages the Common Jar">
	</target>

	<target name="clean" description="Removes artifacts from previous builds">
		<delete dir="${build.dir}" includeemptydirs="true" />
		<delete dir="${jar.dir}" includeemptydirs="true" />
		<delete dir="${reports.dir}" includeemptydirs="true" />
	</target>

	<target name="jar" depends="compile">
		<mkdir dir="${jar.dir}"/>
		<jar destfile="${jar.dir}/explorviz-common.jar">
			<manifest>
				<attribute name="Class-Path" value="."/>
				<attribute name="Can-Redefine-Classes" value="true"/>
			</manifest>
			<fileset dir="${build.dir}"/>
			<fileset dir="." includes="*LICENSE*" />
			<zipfileset excludes="META-INF/*.SF" src="lib/slf4j-simple-1.7.5.jar"/>
		</jar>
	</target>
	
	<target name="compile">
		<mkdir dir="${build.dir}"/>
		
		<javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="classpath" includeantruntime="false" debug="true" />
	</target>
	
	<path id="classpath">
		<fileset dir=".">
			<include name="lib/*.jar"/>
		</fileset>
	</path>
	
	<!-- TEST JOBS -->
	
    <target name="test" depends="compile-tests" description="JUnit-Tests">
		<mkdir dir="${test.reports}" />
		<junit printsummary="yes" fork="yes" haltonfailure="no">        
			<classpath>
				<path refid="testclasspath"/>
			</classpath>
			<formatter type="xml" />
			<batchtest todir="${test.reports}">
				<fileset dir="${test.src}"> 
					<include name="**/*Test.java" /> 
				</fileset>
			</batchtest>
		</junit>
    </target>
	
	<target name="compile-tests" depends="compile">
		<mkdir dir="${build.dir}"/>
        <javac srcdir="${test.src}" destdir="${build.dir}" includeantruntime="false" debug="true">
			<classpath>
				<path refid="testclasspath"/>
			</classpath>
		</javac>
    </target>
	
	<path id="testclasspath">
 		<pathelement path="${build.dir}" />
		<fileset dir="lib" includes="*.jar" />
	</path>
</project>