build.xml 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?xml version="1.0" ?>
  2. <project name="CarCrashX" default="jarfile">
  3. <!-- Initialize build properties -->
  4. <target name="init" description="Initializes properties">
  5. <property name="project.name" value="CarCrashX" />
  6. <property name="src.dir" value="src" />
  7. <property name="main.class" value="org.academiadecodigo.bootcamp.CarCrashX" />
  8. <property name="build.dir" value="build" />
  9. <property name="classes.dir" value="${build.dir}/classes" />
  10. <property name="lib.dir" value="lib" />
  11. <path id="classpath">
  12. <fileset dir="${lib.dir}" includes="**/*.jar" />
  13. </path>
  14. </target>
  15. <!-- Creates the build directories to hold JAR and Class files -->
  16. <target name="prepare" description="Creates the build and classes directories" depends="init">
  17. <mkdir dir="${classes.dir}" />
  18. </target>
  19. <!-- Removes the build directory -->
  20. <target name="clean" description="Clean up project" depends="init">
  21. <delete dir="${build.dir}" />
  22. </target>
  23. <!-- Compiles the source code -->
  24. <target name="compile" description="Compiles the source code" depends="prepare">
  25. <javac srcdir="${src.dir}" destdir="${classes.dir}">
  26. <classpath refid="classpath"/>
  27. </javac>
  28. </target>
  29. <!-- Creates a JAR file -->
  30. <target name="jarfile" description="Archives the code" depends="compile">
  31. <jar destfile="${build.dir}/${project.name}.jar" basedir="${classes.dir}">
  32. <manifest>
  33. <attribute name="Main-Class" value="${main.class}" />
  34. <attribute name="Class-Path" value="${lib.dir}" />
  35. </manifest>
  36. <zipgroupfileset dir="${lib.dir}" includes="*.jar"/>
  37. </jar>
  38. </target>
  39. </project>