`

ANT预编译JSP

阅读更多
<?xml version="1.0" encoding="GBK"?>
<project name="webNews" basedir="." default="java2class">
<property file="build.properties"/>
<target name="all" depends="jsp2java,java2class,class2jar"></target>
<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>
 <jsp2java classpath="jsp2java.classpath" javaEncoding="UTF-8" validateXml="false"
   uriroot="${webapp.path}/WebRoot" webXmlFragment="${webapp.path}/WebRoot/WEB-INF/webJSP.xml"
   outputDir="${webapp.path}/WebRoot/WEB-INF/JspC/src"/>
</target>

<target name="java2class">
<mkdir dir="${webapp.path}/WebRoot/WEB-INF/JspC/classes"/>
<javac srcdir="${webapp.path}/src" destdir="${webapp.path}/Webroot/WEB-INF/JspC/classes"
 encoding="utf-8" optimize="off" debug="on" failonerror="false" excludes="**/*.smap">
 <classpath id="java2class.classpath">
  <fileset dir="${webapp.path}/WebRoot/WEB-INF/lib">
   <include name="*.jar"></include>
  </fileset>
  <fileset dir="${tomcat.home}/lib">
  	<include name="*.jar"/>
 </fileset>
 <fileset dir="${tomcat.home}/bin">
 	<include name="*.jar"/>
 </fileset>
 <pathelement location="${webapp.path}/WebRoot/WEB-INF/classes"/> 
 </classpath>
</javac>
</target>
<target name="class2jar">
<mkdir dir="${webapp.path}/WebRoot/WEB-INF/lib"></mkdir>
<jar jarfile="${webapp.path}/WebRoot/WEB-INF/lib/${webapp.name}JSP.jar" basedir="${webapp.path}/Webroot/WEB-INF/JspC/classes"/>
</target>
<target name="clear">
<delete dir="${webapp.path}/WebRoot/WEB-INF/JspC/src"/>
<delete dir="${webapp.path}/Webroot/WEB-INF/JspC/classes"/>
<delete dir="${webapp.path}/WebRoot/WEB-INF/lib/${webapp.name}JSP.jar"></delete>

</target>
</project>

 

tomcat.home=C:/apache-tomcat-6.0.20
webapp.path=D:/workspace/demo
webapp.name=demo

 

只需要设置好Ant的path环境变量,然后修改build.properties。执行ant all命令即可。
生成好的jar文件是{$webappname}JSP.jar。
在做为产品发布的时候,只需要你的类jar包和JSP预编译的包放到WEB-INF\lib\目录下即可,如${webappname}.jar和JSP预编译的包${webappname}JSP.jar;
然后删除掉你的所有的预编过的JSP源文件;
并且${webapp.path}/WEB-INF/webJSP.xml里的servlet映射,添加到${webapp.path}/WEB-INF/web.xml中。

分享到:
评论
1 楼 pacoson 2016-07-08  
感谢楼主。请受小生一拜。

相关推荐

    把jsp编译打包成jar

    将工程中的jsp编译成servlet后打成一个jar包,并且自动生成web.xml中的servlet配置。

    ant1.9资源

    Ant的javac任务用于实现编译Java程序的功能。下面来看一个简单的例子: 首先我们建立名为antstudy的Java工程,建立src目录为源代码目录,在src目录下建立HelloWorld.java这个类文件。该类文件的内容如下: public ...

    Ant 1.7

    Ant是一个类似make的工具,用来编译/运行/测试java程序。构建、包装和发布过程中几乎每一件事都可以由Ant的任务来处理.

    完全免费的Java/jsp开发编辑工具FirstJava2

    你还将学会直接用javac命令来编译代码,java运行代码方法,ANT方式编译和运行代码, 创建自己的更高效的Build.xml文件,实现DIY自已的工程, Eclipse和Jbuild编译和运行代码方式,和这差不多,把他们隐藏起来了. 请...

    Ant 1.9.2 API (CHM格式)

    Ant是Java程序员的一个好的工具,主要可以帮助程序员进行java项目的的管理,包括批量编译、部署、文档生成等工作,其用途远不止如此,ant内置了大量的API进行各种文件系统操作,在各种应用服务器中都被广泛应用于...

    适应ant的build文档的编写

    新建一个build.xml,放在工程根目录下。... 通常,src存放Java源文件,classes存放编译后的class文件,lib存放编译和运行用到的所有jar文件,web存放JSP等web文件,dist存放打包后的jar文件,doc存放API文档。

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    7.3.3 编译源代码 7.3.4 创建JAR文件 7.4 小结 第八章 JUnit使用指南 8.1 JUnit介绍 8.1.1 JUnit简介 8.1.2 为什么要使用JUnit 8.2 建立JUnit的开发环境 8.2.1 下载JUnit 8.2.2 配置JUnit 8.3 JUnit的使用方法 8.3.1...

    Smart Hyper Editor v0.2.8

    一个100%纯java文本编辑工具,提供最常用的十种文本模式语法高亮支持,...并具有最易用的ant和java编译、运行功能,兼容实现editplus、ultraedit-32等90%以上的功能,如书签管理、目录查找、智能选择等,让你轻松上手

    apache-tomcat-7.0.82

    在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码...

    maven镜像工具的安装包

    make→Ant→maven→Gradle ②构建 【1】概念:以“java源文件”、“框架配置文件”、‘JSP’、“HTMl”、“图片”等资源为“原材料”,去生产一个可以运行的项目的过程 编译 部署 搭建 【2】编译:java源文件...

    基于Reactjs+Ant Design+Servlet宾馆管理系统.zip

    本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何...

    轻量级Java EE企业应用开发实战 源码 chapters 02

    如果为了可以编译和运行Java程序,还应该在PATH环境变量中增加%JAVA_HOME%/bin。其中,JAVA_HOME代表JDK(不是JRE)的安装路径。 (2) 安装Apache的Tomcat 6.0.16,不要使用安装文件安装,而是采用解压缩的安装方式...

    【JTHarness4_4_0】【需要用到的包】

    JT Harness引用了其他的开源包,并且对包的版本有要求,一定要使用对应的版本,否则可能会出现函数或类找不到的问题,导致编译不通过。下面的包我都会打包放在附件中,不用自己去下载。 引用的jar包 下载地址 说明 ...

    轻量级Java EE企业应用开发实战 源码 chapters 01

    如果为了可以编译和运行Java程序,还应该在PATH环境变量中增加%JAVA_HOME%/bin。其中,JAVA_HOME代表JDK(不是JRE)的安装路径。 (2) 安装Apache的Tomcat 6.0.16,不要使用安装文件安装,而是采用解压缩的安装方式...

    轻量级Java EE企业应用开发实战 源码 chapters 10

    如果为了可以编译和运行Java程序,还应该在PATH环境变量中增加%JAVA_HOME%/bin。其中,JAVA_HOME代表JDK(不是JRE)的安装路径。 (2) 安装Apache的Tomcat 6.0.16,不要使用安装文件安装,而是采用解压缩的安装方式...

    FirstJava2完全教材

    你还将学会直接用javac命令来编译代码,java运行代码方法,ANT方式编译和运行代码, 创建自己的更高效的Build.xml文件,实现DIY自已的工程, Eclipse和Jbuild编译和运行代码方式,和这差不多,把他们隐藏起来了. 请输入...

    《程序天下:J2EE整合详解与典型案例》光盘源码

    7.3.3 编译源代码 7.3.4 创建JAR文件 7.4 小结 第八章 JUnit使用指南 8.1 JUnit介绍 8.1.1 JUnit简介 8.1.2 为什么要使用JUnit 8.2 建立JUnit的开发环境 8.2.1 下载JUnit 8.2.2 配置JUnit 8.3 JUnit的使用方法 8.3.1...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    7.3.3 编译源代码 7.3.4 创建JAR文件 7.4 小结 第八章 JUnit使用指南 8.1 JUnit介绍 8.1.1 JUnit简介 8.1.2 为什么要使用JUnit 8.2 建立JUnit的开发环境 8.2.1 下载JUnit 8.2.2 配置JUnit 8.3 JUnit的使用方法 8.3.1...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    7.3.3 编译源代码 7.3.4 创建JAR文件 7.4 小结 第八章 JUnit使用指南 8.1 JUnit介绍 8.1.1 JUnit简介 8.1.2 为什么要使用JUnit 8.2 建立JUnit的开发环境 8.2.1 下载JUnit 8.2.2 配置JUnit 8.3 JUnit的使用方法 8.3.1...

Global site tag (gtag.js) - Google Analytics