在日常的项目开发,经常需要我们可以打包测试。特别是,开发环境是windows。实际情况是linux。
这样的话。一个非常大的程序猿将包,其中将包,这些软件包可能非常大,这里是真正的代码会改变的一部分,和jar基本套餐不动。
当然,很多人可能会说,,主动化測试。非常好的。我们今天要做的就是自己主动化測试的第一步。
这个时候我是能够使用ant来打包。去掉项目中的全部的jar文件。
然后在项目的tomcat启动时到特定的地点去载入jar文件。
这样做。war包可能会仅仅有几M,什么更小。详细怎样动态的载入jar文件,我们在下一章解说,这一章,我们先来看ant打包的build.xml配置。
看源码:
<?xml version="1.0" encoding="UTF-8" ?> <project name="nojar" default="deleteClasses" basedir="."> <property name="classes" value="build/classes" /> <property name="build" value="build" /> <property name="lib" value="WebRoot/WEB-INF/lib" /> <path id="compile.jar"> <fileset dir="${lib}"> <include name="*.jar" /> </fileset> </path> <!-- 删除build路径--> <target name="deleteBuild"> <delete dir="build" /> <copy todir="${classes}/com/herman/config"> <fileset dir="${basedir}/src/com/herman/config"> <include name="*" /> </fileset> </copy> </target> <!-- 建立build/classes路径,并编译class文件到build/classes路径下--> <target name="compile" depends="deleteBuild"> <mkdir dir="${classes}" /> <javac srcdir="src" destdir="${classes}" includeantruntime="on" encoding="utf-8"> <classpath refid="compile.jar" /> </javac> </target> <!-- 打war包--> <target name="war" depends="compile"> <war warfile="${build}/nojar.war" webxml="WebRoot/WEB-INF/web.xml" encoding="utf-8"> <!-- 拷贝WebRoot下除了WEB-INF和META-INF的两个文件夹--> <fileset dir="WebRoot" includes="**/*.jsp"></fileset> <!--<fileset dir="WebRoot" includes="**/*.*" excludes="META-INF,WEB-INF"/>--> <!-- 拷贝lib文件夹下的jar包--> <!--<lib dir="${lib}" />--> <!-- 拷贝build/classes下的class文件--> <classes dir="${classes}" /> </war> </target> <!-- 删除build/下的classes下的字节码文件,降低war包的总大小--> <target name="deleteClasses" depends="war"> <!--<delete dir="${classes}"></delete>--> </target> </project>是不是非常easy,好吧。假设你觉得本文还能够,请关注我的个人博客!
或增加QQ组:135430763共同学习!
版权声明:本文博客原创文章。博客,未经同意,不得转载。