build.xml 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project default="jar src distribute" name="MCSUtils">
  3. <property name="app.name" value="MCSUtils">
  4. </property>
  5. <property name="doc" value="${basedir}/docs">
  6. </property>
  7. <property name="src" value="${basedir}/src">
  8. </property>
  9. <property name="javadoc" value="${doc}/javadoc">
  10. </property>
  11. <property name="library" value="${basedir}\lib">
  12. </property>
  13. <property name="distribution" value="${basedir}\dist">
  14. </property>
  15. <property name="noticename" value="notice.txt">
  16. </property>
  17. <fileset id="libraries" defaultexcludes="yes" dir="${library}">
  18. <include name="**/*.jar" />
  19. </fileset>
  20. <fileset id="javadocs" defaultexcludes="yes" dir="${doc}">
  21. <include name="javadoc/**/*" />
  22. </fileset>
  23. <target name="prepare_properties" depends="clean" description="reads properties and sets default values">
  24. <!-- update build information by incrementing build-number and actualizing date -->
  25. <propertyfile file="${basedir}/build.properties" comment="MCSUtils interactive build information file. This file is created automatically. DO NOT CHANGE !">
  26. <entry key="build.num" type="int" default="00" operation="+" pattern="00" />
  27. <entry key="build.date" type="date" value="now" pattern="dd.MM.yyyy HH:mm:ss" />
  28. </propertyfile>
  29. <!-- read build.properties -->
  30. <property file="${basedir}/build.properties" />
  31. <property name="releasenumber" value="${releasenum}.${build.num}">
  32. </property>
  33. <property name="jarname" value="${app.name}-${releasenumber}.jar">
  34. </property>
  35. <property name="zipjarname" value="${jarname}.zip">
  36. </property>
  37. <property name="jarsrcname" value="${app.name}-${releasenumber}-src.jar">
  38. </property>
  39. <property name="zipjarsrcname" value="${jarsrcname}.zip">
  40. </property>
  41. <property name="zipdoc" value="${app.name}-${releasenumber}-docs.zip">
  42. </property>
  43. <property name="zipall" value="${app.name}-${releasenumber}-all.zip">
  44. </property>
  45. <mkdir dir="${distribution}" />
  46. <delete>
  47. <fileset dir="${distribution}">
  48. <include name="*" />
  49. </fileset>
  50. </delete>
  51. <mkdir dir="${distribution}" />
  52. </target>
  53. <target name="javadoc">
  54. <javadoc destdir="docs/javadoc" access="package" use="true" notree="false" nonavbar="false" noindex="false" splitindex="true" author="true" version="true" nodeprecatedlist="false" nodeprecated="false" packagenames="de.mcs.utils,de.mcs.utils.codecs" sourcepath="src" classpath="bin" overview="E:\DATEN\SOURCEN\java\MCSUtils\src\overview.html" doctitle="MCSUtils" />
  55. </target>
  56. <!-- delete intermediate files -->
  57. <target name="clean" description="delete intermediate files">
  58. <delete dir="${dist}" />
  59. </target>
  60. <!-- compile files -->
  61. <target name="compile" depends="prepare_properties" description="compile all files">
  62. <javac srcdir="${src}" destdir="${distribution}" target="1.6" source="1.6">
  63. <classpath>
  64. <fileset refid="libraries" />
  65. <pathelement location="${src}" />
  66. </classpath>
  67. <compilerarg value="-deprecation" />
  68. </javac>
  69. </target>
  70. <target name="jar src distribute" depends="javadoc,prepare_properties,compile">
  71. <jar duplicate="preserve" destfile="${distribution}/${jarname}">
  72. <fileset dir="${basedir}/bin" />
  73. <manifest>
  74. <attribute name="main-version" value="${releasenumber}" />
  75. <attribute name="main-build-date" value="${build.date}" />
  76. <attribute name="main-vendor" value="MCS" />
  77. <attribute name="main-product" value="MCSUtils" />
  78. </manifest>
  79. </jar>
  80. <jar duplicate="preserve" destfile="${distribution}/${app.name}.jar">
  81. <fileset dir="${basedir}/bin" />
  82. <manifest>
  83. <attribute name="main-version" value="${releasenumber}" />
  84. <attribute name="main-build-date" value="${build.date}" />
  85. <attribute name="main-vendor" value="MCS" />
  86. <attribute name="main-product" value="MCSUtils" />
  87. </manifest>
  88. </jar>
  89. <jar duplicate="preserve" destfile="${distribution}/${jarsrcname}">
  90. <fileset dir="${basedir}/bin" />
  91. <fileset dir="${basedir}/src" />
  92. <fileset dir="${basedir}/docs" />
  93. <manifest>
  94. <attribute name="main-version" value="${releasenumber}" />
  95. <attribute name="main-build-date" value="${build.date}" />
  96. <attribute name="main-vendor" value="MCS" />
  97. <attribute name="main-product" value="MCSUtils" />
  98. </manifest>
  99. </jar>
  100. </target>
  101. </project>