servlet-api源码的获取以及打包

servlet-api源码的获取打包

使用Ant打包servlet-api源码

王延成 (ybygjy#gmail.com), 作者/编者,

2010 年 01 月 27 日

本文单主要简述了获取编译打包servlet-api源代码的过程。所用到的ant脚本需要根据实际场景做简单的调整即可。

基本步骤

1、准备tomcat源码
下载地址:[http://archive.apache.org/dist/tomcat/tomcat-5/v5.0.28/src/]点击下载

2、ant环境
下载地址:[http://archive.apache.org/dist/ant/binaries/]点击下载

3、ant脚本,这段脚本是改的人家源码里的那份build.xml。因为我们只需要取得源码,然后放到eclipse里做代码关联。所以删掉其它的target其中包括clear,所以执行完脚本后还需要:

copy出打包完成后的源文件,jar文件默认会在 [dist/lib]下 当然可修改build将它们放到其它地方 手动的把相应ant创建的临时目录删掉。
注意,需要把以下代码保存成servletApiSource.xml文件放到目录[jakarta-tomcat-5.0.28-src/jakarta-servletapi-5/jsr154]下,然后
ant -f servletApiSource.xml

<project name="Servlet API Classes" default="jar" basedir="."> <!-- Load user property definition overrides --> <property file="build.properties"/> <property file="${user.home}/build.properties"/> <!-- Establish property definition defaults --> <property name="compile.debug" value="true"/> <property name="compile.deprecation" value="false"/> <property name="compile.optimize" value="true"/> <property name="implementation.revision" value="public_draft"/> <property name="servlet-api.build" value="build"/> <property name="servlet-api.dist" value="dist"/> <property name="jsp-api.src" value="../jsr152"/> <property name="servlet-api.jar" value="${servlet-api.dist}/lib/servlet-api.jar"/> <property name="servlet-api-source.jar" value="${servlet-api.dist}/lib/servlet-api-source.jar"/> <path id="examples.classpath"> <pathelement location="${servlet-api.build}/classes"/> </path> <!-- ===================== Prepare Directories ========================= --> <target name="prepare"> <!-- "Build" Hierarchy --> <mkdir dir="${servlet-api.build}"/> <mkdir dir="${servlet-api.build}/classes"/> <mkdir dir="${servlet-api.build}/docs"/> <mkdir dir="${servlet-api.build}/docs/api"/> <mkdir dir="${servlet-api.build}/examples"/> <!-- "Dist" Hierarchy --> <mkdir dir="${servlet-api.dist}"/> <mkdir dir="${servlet-api.dist}/docs"/> <mkdir dir="${servlet-api.dist}/docs/api"/> <mkdir dir="${servlet-api.dist}/lib"/> <mkdir dir="${servlet-api.dist}/src"/> <mkdir dir="${servlet-api.dist}/examples"/> <uptodate property="docs.uptodate" targetfile="${servlet-api.build}/docs/api/index.html"> <srcfiles dir="src/share" includes="**/*.java" /> </uptodate> </target> <!-- ======================= Static Files ============================== --> <target name="static" depends="prepare"> <!-- "Dist" Hierarchy --> <copy todir="${servlet-api.dist}"> <fileset dir="." includes="BUILDING.txt"/> <fileset dir="." includes="LICENSE"/> <fileset dir="." includes="README.txt"/> </copy> </target> <!-- ======================== Compile Classes ========================== --> <target name="compile" depends="static" description="Compile API classes (Default)"> <copy todir="${servlet-api.build}/src"> <fileset dir="src/share"> <include name="**/*"/> </fileset> <fileset dir="${jsp-api.src}/src/share"> <include name="**/*"/> </fileset> </copy> <!-- Java classes --> <javac srcdir="${servlet-api.build}/src" destdir="${servlet-api.build}/classes" debug="${compile.debug}" deprecation="${compile.deprecation}" optimize="${compile.optimize}"/> <!-- Associated property files --> <copy todir="${servlet-api.build}/classes"> <fileset dir="src/share"> <include name="**/*.properties"/> </fileset> <fileset dir="${jsp-api.src}/src/share"> <include name="**/*.properties"/> </fileset> </copy> <!-- Servlet resources --> <copy todir="${servlet-api.build}/classes/javax/servlet/resources"> <fileset dir="src/share/dtd" includes="*.dtd,*.xsd"> <exclude name="jsp*.dtd"/> <exclude name="web-jsp*.dtd"/> </fileset> <fileset dir="${jsp-api.src}/src/share/dtd"> <include name="jsp*.dtd"/> <include name="jsp*.xsd"/> <include name="web-jsp*.dtd"/> <include name="web-jsp*.xsd"/> </fileset> </copy> <!-- Servlet resources --> <copy todir="${servlet-api.build}/src/javax/servlet/resources"> <fileset dir="src/share/dtd" includes="*.dtd,*.xsd"> <exclude name="jsp*.dtd"/> <exclude name="web-jsp*.dtd"/> </fileset> <fileset dir="${jsp-api.src}/src/share/dtd"> <include name="jsp*.dtd"/> <include name="jsp*.xsd"/> <include name="web-jsp*.dtd"/> <include name="web-jsp*.xsd"/> </fileset> </copy> </target> <!-- ===================== Distribution Files ========================= --> <target name="jar" depends="compile" description="Create the jar"> <!-- Prepare Manifest --> <copy tofile="${servlet-api.build}/manifest" file="src/etc/manifest" overwrite="yes"> <filterset> <filter token="implementation.revision" value="${implementation.revision}"/> </filterset> </copy> <!-- Create JAR file --> <jar jarfile="${servlet-api.jar}" basedir="${servlet-api.build}/classes" manifest="${servlet-api.build}/manifest"> <include name="javax/servlet/**"/> <include name="javax/servlet/jsp/**"/> </jar> <jar jarfile="${servlet-api-source.jar}" basedir="${servlet-api.build}/src" manifest="${servlet-api.build}/manifest"> <include name="javax/servlet/**"/> </jar> </target> </project>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值