Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. <?xml version="1.0"?>
  2. <!-- =================================================================== -->
  3. <!-- JBoss build file -->
  4. <!-- =================================================================== -->
  5. <project name="javassist" default="jar" basedir=".">
  6. <property name="dist-version" value="javassist-3.6"/>
  7. <property environment="env"/>
  8. <property name="target.jar" value="javassist.jar"/>
  9. <property name="target-src.jar" value="javassist-src.jar"/>
  10. <property name="src.dir" value="${basedir}/src/main"/>
  11. <property name="build.dir" value="${basedir}/build"/>
  12. <property name="build.classes.dir" value="${build.dir}/classes"/>
  13. <property name="run.dir" value="${build.classes.dir}"/>
  14. <!-- Build classpath -->
  15. <path id="classpath">
  16. <pathelement location="${build.classes.dir}"/>
  17. </path>
  18. <property name="build.classpath" refid="classpath"/>
  19. <!-- =================================================================== -->
  20. <!-- Prepares the build directory -->
  21. <!-- =================================================================== -->
  22. <target name="prepare" >
  23. <mkdir dir="${build.dir}"/>
  24. <mkdir dir="${build.classes.dir}"/>
  25. </target>
  26. <!-- =================================================================== -->
  27. <!-- Compiles the source code -->
  28. <!-- =================================================================== -->
  29. <target name="compile" depends="prepare">
  30. <javac srcdir="${src.dir}"
  31. destdir="${build.classes.dir}"
  32. debug="on"
  33. deprecation="on"
  34. optimize="off"
  35. includes="**">
  36. <classpath refid="classpath"/>
  37. </javac>
  38. </target>
  39. <target name="sample" depends="compile">
  40. <javac srcdir="${basedir}"
  41. destdir="${build.classes.dir}"
  42. debug="on"
  43. deprecation="on"
  44. optimize="off"
  45. includes="sample/**"
  46. excludes="sample/hotswap/**,sample/evolve/sample/**">
  47. <classpath refid="classpath"/>
  48. </javac>
  49. <copy file="sample/vector/Test.j"
  50. todir="${build.classes.dir}/sample/vector"/>
  51. <javac srcdir="${basedir}/sample/evolve"
  52. destdir="${build.classes.dir}/sample/evolve/"
  53. debug="on"
  54. deprecation="on"
  55. optimize="off"
  56. includes="sample/**">
  57. <classpath refid="classpath"/>
  58. </javac>
  59. <copy todir="${build.classes.dir}/sample/evolve">
  60. <fileset dir="sample/evolve"/>
  61. </copy>
  62. <copy file="${build.classes.dir}/sample/evolve/WebPage.class"
  63. tofile="${build.classes.dir}/sample/evolve/WebPage.class.0"/>
  64. <copy file="${build.classes.dir}/sample/evolve/sample/evolve/WebPage.class"
  65. tofile="${build.classes.dir}/sample/evolve/WebPage.class.1"/>
  66. <javac srcdir="${basedir}/sample/hotswap"
  67. destdir="${build.classes.dir}"
  68. debug="on"
  69. deprecation="on"
  70. optimize="off"
  71. includes="*">
  72. <classpath refid="classpath"/>
  73. </javac>
  74. <mkdir dir="${build.classes.dir}/logging"/>
  75. <javac srcdir="${basedir}/sample/hotswap/logging"
  76. destdir="${build.classes.dir}/logging"
  77. debug="on"
  78. deprecation="on"
  79. optimize="off"
  80. includes="*">
  81. <classpath refid="classpath"/>
  82. </javac>
  83. <echo>To run the sample programs without ant, change the current directory
  84. to ${build.classes.dir}.</echo>
  85. </target>
  86. <target name="jar" depends="compile">
  87. <jar jarfile="${target.jar}" manifest="${src.dir}/META-INF/MANIFEST.MF">
  88. <fileset dir="${build.classes.dir}">
  89. <include name="**/*.class"/>
  90. </fileset>
  91. </jar>
  92. <jar jarfile="${target-src.jar}" manifest="${src.dir}/META-INF/MANIFEST.MF">
  93. <fileset dir="${src.dir}">
  94. <include name="javassist/**"/>
  95. </fileset>
  96. </jar>
  97. </target>
  98. <target name="javadocs">
  99. <mkdir dir="html"/>
  100. <javadoc
  101. Locale="en_US"
  102. packagenames="javassist.*"
  103. excludepackagenames="javassist.compiler.*,javassist.convert.*,javassist.scopedpool.*,javassist.bytecode.stackmap.*"
  104. sourcepath="src/main"
  105. defaultexcludes="yes"
  106. destdir="html"
  107. author="true"
  108. version="true"
  109. use="true"
  110. public="true"
  111. nohelp="true"
  112. windowtitle="Javassist API">
  113. <doctitle><![CDATA[<h1>Javassist</h1>]]></doctitle>
  114. <bottom><![CDATA[<i>Javassist, a Java-bytecode translator toolkit.<br>
  115. Copyright (C) 1999-2007 Shigeru Chiba. All Rights Reserved.</i>]]></bottom>
  116. </javadoc>
  117. </target>
  118. <target name="dist" depends="jar,javadocs">
  119. <delete file="${dist-version}.zip"/>
  120. <zip zipfile="${dist-version}.zip">
  121. <zipfileset dir="${basedir}" prefix="${dist-version}">
  122. <include name="**"/>
  123. <exclude name=".*"/>
  124. <exclude name=".*/**"/>
  125. <exclude name="build/**"/>
  126. <exclude name="local/**"/>
  127. <exclude name="${dist-version}.zip"/>
  128. <exclude name="${target-src.jar}"/>
  129. </zipfileset>
  130. </zip>
  131. </target>
  132. <target name="clean">
  133. <delete dir="build"/>
  134. <delete dir="html"/>
  135. <delete file="${target.jar}"/>
  136. <delete file="${dist-version}.zip"/>
  137. </target>
  138. <!-- =================================================================== -->
  139. <!-- Run samples -->
  140. <!-- =================================================================== -->
  141. <target name = "sample-all"
  142. depends="sample-test,sample-reflect,sample-duplicate,sample-vector">
  143. <echo>** please run sample-rmi, sample-evolve, and</echo>
  144. <echo> sample-hotswap (or -hotswap5) separately **</echo>
  145. </target>
  146. <target name = "sample-test" depends="sample" >
  147. <java fork="true" dir="${run.dir}" classname="sample.Test">
  148. <classpath refid="classpath"/>
  149. </java>
  150. </target>
  151. <target name = "sample-reflect" depends="sample" >
  152. <java fork="true" dir="${run.dir}" classname="javassist.tools.reflect.Loader">
  153. <classpath refid="classpath"/>
  154. <arg line="sample.reflect.Main Joe" />
  155. </java>
  156. </target>
  157. <target name = "sample-duplicate" depends="sample" >
  158. <echo>run sample.duplicate.Viewer without reflection</echo>
  159. <java fork="true" dir="${run.dir}" classname="sample.duplicate.Viewer">
  160. <classpath refid="classpath"/>
  161. </java>
  162. <echo>run sample.duplicate.Viewer with reflection</echo>
  163. <java fork="true" dir="${run.dir}" classname="sample.duplicate.Main">
  164. <classpath refid="classpath"/>
  165. </java>
  166. </target>
  167. <target name = "sample-vector" depends="sample" >
  168. <echo>sample.preproc.Compiler sample/vector/Test.j</echo>
  169. <java fork="true" dir="${run.dir}" classname="sample.preproc.Compiler">
  170. <classpath refid="classpath"/>
  171. <arg line="sample/vector/Test.j"/>
  172. </java>
  173. <echo>javac sample/vector/Test.java</echo>
  174. <javac srcdir="${build.classes.dir}"
  175. destdir="${build.classes.dir}"
  176. includes="sample/vector/Test.java">
  177. <classpath refid="classpath"/>
  178. </javac>
  179. <java fork="true" dir="${run.dir}" classname="sample.vector.Test" />
  180. </target>
  181. <target name = "sample-rmi" depends="sample" >
  182. <echo>** Please open sample/rmi/webdemo.html with your browser **</echo>
  183. <java fork="true" dir="${run.dir}" classname="sample.rmi.Counter">
  184. <classpath refid="classpath"/>
  185. <arg value="5001" />
  186. </java>
  187. </target>
  188. <target name = "sample-evolve" depends="sample" >
  189. <echo>** Please open http://localhost:5003/demo.html with your browser **</echo>
  190. <java fork="true" dir="${run.dir}" classname="sample.evolve.DemoLoader">
  191. <classpath refid="classpath"/>
  192. <arg value="5003" />
  193. </java>
  194. </target>
  195. <!-- for JDK 1.4 -->
  196. <target name = "sample-hotswap" depends="sample">
  197. <echo>** JAVA_HOME/lib/tools.jar must be included in CLASS_PATH</echo>
  198. <echo>** for JDK 1.4</echo>
  199. <java fork="true" dir="${run.dir}" classname="Test">
  200. <jvmarg line="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000" />
  201. <classpath refid="classpath"/>
  202. </java>
  203. </target>
  204. <!-- for Java 5 -->
  205. <target name = "sample-hotswap5" depends="sample">
  206. <echo>** JAVA_HOME/lib/tools.jar must be included in CLASS_PATH</echo>
  207. <echo>** for JDK 1.5 or later</echo>
  208. <java fork="true" dir="${run.dir}" classname="Test">
  209. <jvmarg line="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000" />
  210. <classpath refid="classpath"/>
  211. </java>
  212. </target>
  213. </project>