build.xml 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. <project basedir="." default="build" name="projectName">
  2. <taskdef resource="net/sf/antcontrib/antcontrib.properties" />
  3. <!-- 执行命令 -->
  4. <!-- 1.测试环境 ant -buildfile build.xml -DisTestEnv=true -->
  5. <!-- 1.正式环境(默认) ant -buildfile build.xml -->
  6. <!-- 1. 初始化环境变量 -->
  7. <target name="init" description="">
  8. <!--  基本配置项目  -->
  9. <property name="name" value="service" />
  10. <property name="src" value="${basedir}/source" />
  11. <property name="modelsrc" value="${basedir}/modelsrc" />
  12. <property name="generated" value="${basedir}/generated" />
  13. <property name="configsrc" value="${basedir}/configsrc" />
  14. <property name="testsrc" value="${basedir}/commtest" />
  15. <property name="definitionsrc" value="${basedir}/definitionsrc" />
  16. <property name="lib" value="${basedir}/lib" />
  17. <property name="packages" value="ant.*" />
  18. <property name="conifg" value="${basedir}/deployecfg" />
  19. <property name="build.src" value="${basedir}/jar/src" />
  20. <property name="build.dest" value="${basedir}/jar/classes" />
  21. <path id="classpath">
  22. <fileset dir="${lib}">
  23. <include name="**/*.jar" />
  24. </fileset>
  25. </path>
  26. <!-- jar 执行的主类 -->
  27. <property name="mainclass" value="com.miniframe.httpserver.MainServer" />
  28. <!-- 先删除 src 和 dest目录 -->
  29. <delete dir="${build.src}" />
  30. <delete dir="${build.dest}" />
  31. <mkdir dir="${build.src}" />
  32. <mkdir dir="${build.dest}" />
  33. <copy todir="${build.src}">
  34. <fileset dir="${modelsrc}" />
  35. </copy>
  36. <copy todir="${build.src}">
  37. <fileset dir="${configsrc}" />
  38. </copy>
  39. <copy todir="${build.src}">
  40. <fileset dir="${src}" />
  41. </copy>
  42. <copy todir="${build.src}">
  43. <fileset dir="${generated}" />
  44. </copy>
  45. <copy todir="${build.src}">
  46. <fileset dir="${definitionsrc}">
  47. </fileset>
  48. </copy>
  49. <copy todir="${build.src}">
  50. <fileset dir="${testsrc}">
  51. </fileset>
  52. </copy>
  53. </target>
  54. <!-- 2. 编译系统class -->
  55. <target name="compile" depends="init" description="打包">
  56. <javac fork="true" memoryMaximumSize="256m" srcdir="${build.src}" destdir="${build.dest}" encoding="UTF-8" failonerror="false" debug="on" debuglevel="lines,vars,source">
  57. <classpath refid="classpath" />
  58. </javac>
  59. <copy todir="${build.dest}">
  60. <fileset dir="${build.src}">
  61. <exclude name="**/*.java" />
  62. </fileset>
  63. </copy>
  64. <property name="isTestEnv" value="false" />
  65. <if>
  66. <equals arg1="${isTestEnv}" arg2="true"/>
  67. <then>
  68. <echo>***Test Env****</echo>
  69. </then>
  70. <else>
  71. <echo>***Pro Env****</echo>
  72. <copy todir="${build.dest}" overwrite="true">
  73. <fileset dir="${conifg}">
  74. </fileset>
  75. </copy>
  76. </else>
  77. </if>
  78. <delete dir="${build.src}" />
  79. </target>
  80. <!-- 3. 打包jar文件 -->
  81. <target name="build" depends="compile">
  82. <pathconvert property="mf.classpath" pathsep=" ">
  83. <mapper>
  84. <chainedmapper>
  85. <!-- jar包文件只留文件名,去掉目录信息 -->
  86. <flattenmapper />
  87. <!-- add lib/ prefix -->
  88. <globmapper from="*" to="*" />
  89. </chainedmapper>
  90. </mapper>
  91. <path refid="classpath" />
  92. </pathconvert>
  93. <!-- jar文件的输出路径 -->
  94. <jar destfile="${basedir}/../${name}.jar" basedir="${build.dest}">
  95. <zipfileset src="lib/antlr-2.7.7.jar" />
  96. <zipfileset src="lib/asm-all-5.2.jar" />
  97. <zipfileset src="lib/cglib-nodep-3.2.7.jar" />
  98. <zipfileset src="lib/commons-beanutils-1.9.1.jar" />
  99. <zipfileset src="lib/commons-codec-1.10.jar" />
  100. <zipfileset src="lib/commons-collections-3.2.1.jar" />
  101. <zipfileset src="lib/commons-dbcp2-2.4.0.jar" />
  102. <zipfileset src="lib/commons-digester-1.7.jar" />
  103. <zipfileset src="lib/commons-io-1.3.2.jar" />
  104. <zipfileset src="lib/commons-lang-2.6.jar" />
  105. <zipfileset src="lib/commons-logging-1.2.jar" />
  106. <zipfileset src="lib/commons-pool2-2.5.0.jar" />
  107. <zipfileset src="lib/commons-validator-1.6.jar" />
  108. <zipfileset src="lib/designer-3.1.4.jar" />
  109. <zipfileset src="lib/ehcache-2.10.5.jar" />
  110. <zipfileset src="lib/ehcache-terracotta-client-all.jar" />
  111. <zipfileset src="lib/gson-2.8.6.jar" />
  112. <zipfileset src="lib/hibernate2.jar" />
  113. <zipfileset src="lib/httpasyncclient-4.1.3.jar" />
  114. <zipfileset src="lib/httpasyncclient-cache-4.1.3.jar" />
  115. <zipfileset src="lib/httpclient-4.5.5.jar" />
  116. <zipfileset src="lib/httpclient-cache-4.5.5.jar" />
  117. <zipfileset src="lib/httpcore-4.4.9.jar" />
  118. <zipfileset src="lib/httpcore-nio-4.4.6.jar" />
  119. <zipfileset src="lib/httpmime-4.5.5.jar" />
  120. <zipfileset src="lib/ibatis-2.9.1.jar" />
  121. <zipfileset src="lib/ibator-1.2.5.jar" />
  122. <zipfileset src="lib/iText-2.1.7.jar" />
  123. <zipfileset src="lib/jackson-annotations-2.8.0.jar" />
  124. <zipfileset src="lib/jackson-core-2.8.9.jar" />
  125. <zipfileset src="lib/jackson-databind-2.8.9.jar" />
  126. <zipfileset src="lib/jasperreports-6.6.0.jar" />
  127. <zipfileset src="lib/jedis-2.9.0.jar" />
  128. <zipfileset src="lib/jfreechart-1.0.19.jar" />
  129. <zipfileset src="lib/jjwt-0.9.0.jar" />
  130. <zipfileset src="lib/json-20180813.jar" />
  131. <zipfileset src="lib/kaptcha-2.3.2.jar" />
  132. <zipfileset src="lib/log4j-1.2.16.jar" />
  133. <zipfileset src="lib/microbatch-3.0.0.jar" />
  134. <zipfileset src="lib/microservice.jar" />
  135. <zipfileset src="lib/miniframe-cache-3.0.1.jar" />
  136. <zipfileset src="lib/netty-all-4.1.29.Final.jar" />
  137. <zipfileset src="lib/poi-3.17.jar" />
  138. <zipfileset src="lib/postgresql-42.2.4.jar" />
  139. <zipfileset src="lib/quartz-2.2.3.jar" />
  140. <zipfileset src="lib/slf4j-api-1.7.25.jar" />
  141. <zipfileset src="lib/slf4j-nop-1.7.25.jar" />
  142. <zipfileset src="lib/spring-aop-4.3.18.RELEASE.jar" />
  143. <zipfileset src="lib/spring-beans-4.3.18.RELEASE.jar" />
  144. <zipfileset src="lib/spring-context-4.3.18.RELEASE.jar" />
  145. <zipfileset src="lib/spring-context-support-4.3.18.RELEASE.jar" />
  146. <zipfileset src="lib/spring-core-4.3.18.RELEASE.jar" />
  147. <zipfileset src="lib/spring-data-commons-1.13.15.RELEASE.jar" />
  148. <zipfileset src="lib/spring-data-keyvalue-1.2.15.RELEASE.jar" />
  149. <zipfileset src="lib/spring-data-redis-1.8.15.RELEASE.jar" />
  150. <zipfileset src="lib/spring-expression-4.3.18.RELEASE.jar" />
  151. <zipfileset src="lib/spring-jdbc-4.3.18.RELEASE.jar" />
  152. <zipfileset src="lib/spring-orm-4.3.18.RELEASE.jar" />
  153. <zipfileset src="lib/spring-orm-ibatis-3.2.9.jar" />
  154. <zipfileset src="lib/spring-schema-4.3.18.RELEASE.jar" />
  155. <zipfileset src="lib/spring-tx-4.3.18.RELEASE.jar" />
  156. <zipfileset src="lib/spring-validation-1.0.jar" />
  157. <zipfileset src="lib/terracotta-toolkit-runtime-4.3.5.jar" />
  158. <zipfileset src="lib/transaction-api-1.1.jar" />
  159. <zipfileset src="lib/velocity-1.7.jar" />
  160. <!-- 系统批处理定制支持 -->
  161. <manifest>
  162. <attribute name="Main-class" value="${mainclass}" />
  163. <attribute name="Class-Path" value="${mf.classpath}" />
  164. </manifest>
  165. </jar>
  166. <delete dir="${basedir}/jar" />
  167. </target>
  168. </project>