jeecg_scott 发表于 2013-8-2 17:40:05

jsp变为jar包

一、ant进行编译处理,构建tomcat6.x以上的build文件   <?xml version="1.0"?><project name="WebApp Precompilation JSP to Java to Class to Jar" basedir="." default="help">    <property name="tomcat.home" value="D:/apache-tomcat-6.0.13"/>    <property name="webapp.name" value="myapp"/>    <property name="webapp.path" value="D:/AntTest/TestHunXiao/WebRoot"/>      <taskdef resource="proguard/ant/task.properties"         classpath="D:/AntTest/TestHunXiao/lib/proguard.jar" />   <proguard configuration="pg.pro"/>    <target name="all" depends="jsp2java,java2class,class2jar"/>    <target name="help">      <echo message="显示功能列表"/>      <echo message="jsp2java通过JspC将JSP转换成Java源代码"/>      <echo message="java2class 将转换后的Java源代码进行编译成class文件"/>      <echo message="class2jar 将编译后的class文件打包"/>      <echo message="clear清理现场"/>    </target>    <target name="jsp2java">      <taskdef classname="org.apache.jasper.JspC" name="jsp2java">            <classpath id="jsp2java.classpath">                <fileset dir="${tomcat.home}/bin">                  <include name="*.jar"/>                </fileset>                <fileset dir="${tomcat.home}/lib">                  <include name="*.jar"/>                </fileset>            </classpath>      </taskdef>      <!-- 注意JSP文件要设置为UTF-8编码 -->      <jsp2java classpath="jsp2java.classpath" javaEncoding="UTF-8" validateXml="false" uriroot="${webapp.path}"                  webXmlFragment="${webapp.path}/WEB-INF/webJSP.xml" outputDir="${webapp.path}/WEB-INF/JspC/src"/>    </target>    <target name="java2class">      <mkdir dir="${webapp.path}/WEB-INF/JspC/classes"/>      <!-- 同样Java文件要设置为UTF-8编码 -->      <javac srcdir="${webapp.path}/WEB-INF/JspC/src" destdir="${webapp.path}/WEB-INF/JspC/classes" encoding="UTF-8"               optimize="off" debug="on" failonerror="false" excludes="**/*.smap">            <classpath id="java2class.classpath">                <pathelement location="${webapp.path}/WEB-INF/classes"/>                <fileset dir="${webapp.path}/WEB-INF/lib">                  <include name="*.jar"/>                </fileset>                                <fileset dir="${tomcat.home}/lib">                  <include name="*.jar"/>                </fileset>                <fileset dir="${tomcat.home}/bin">                  <include name="*.jar"/>                </fileset>            </classpath>            <include name="**"/>            <exclude name="tags/**"/>      </javac>    </target>    <target name="class2jar">      <mkdir dir="${webapp.path}/WEB-INF/lib"/>      <jar basedir="${webapp.path}/WEB-INF/JspC/classes" jarfile="${webapp.path}/WEB-INF/lib/${webapp.name}JSP.jar"/>    </target>    <target name="clear">      <delete dir="${webapp.path}/WEB-INF/JspC/classes"/>      <delete dir="${webapp.path}/WEB-INF/JspC/src"/>      <delete dir="${webapp.path}/WEB-INF/JspC"/>    </target></project> 二、执行ant操作   1.命令: ant all   2.生成好的jar文件是{$webapp.name}JSP.jar   3.在做为产品发布的时候,将依赖类包和类jar包和JSP预编译的包放到WEB-INF/lib/       目录下即可   4.然后删除掉你的所有的预编过的JSP源文件   5.将${webapp.path}/WEB-INF/webJSP.xml里的servlet映射,添加到       ${webapp.path}/WEB-INF/web.xml中   参考文档:http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/jasper/JspC.html

页: [1]
查看完整版本: jsp变为jar包