使用org.apache.jasper.JspC编译jsp文件

JspC可以通过jspc.setArgs(args);设置所需参数,和使用指令进行编译相同,

 

使用指令编译范例:

java -cp jasper.jar;servlet-api.jar;Fcatalina.jar;F:\server\tomcat.6\bin\tomcat-juli.jar;ant.jar;jsp-api.jar;jasper-el.jar;el-api.jar;jstl.jar;standard.jar;jasper-el.jar;jasper-jdt.jar org.apache.jasper.JspC -uriroot ./temp -d temp temp.jsp

 也可以通过调用set方法设置参数

Java代码  收藏代码

  1. public class Test1 {  

  2.     public String  jspcTest() {  

  3.         String error="";  

  4.         try {  

  5.             JspC jspc = new JspC();  

  6.             /*String[] arg0 = {"-uriroot", "E:/jspc", "-d", "d:/t", 

  7.                     "temp/temp.jsp" }; 

  8.             jspc.setArgs(arg0);*/  

  9.             jspc.setUriroot("d:/jspc");//web应用的root目录  

  10.             jspc.setOutputDir("d:/t");//.java文件和.class文件的输出目录  

  11.             jspc.setJspFiles("temp/temp.jsp");//要编译的jsp  

  12.             jspc.setCompile(true);//是否编译 false或不指定的话只生成.java文件  

  13.             jspc.execute();  

  14.         } catch (Exception e) {  

  15.             error=e.toString();  

  16.         }  

  17.         return error;  

  18.     }  

  19.     public static void main(String args[]){  

  20.         Test1 t=new Test1();  

  21.         System.out.println(t.jspcTest());  

  22.     }  

  23. }  

 

这里jar包都从tomcat下引用

测试类编译必要jar包:

D:/Tomcat5.5/common/lib/jasper-compiler.jar

D:/Tomcat5.5/common/lib/jasper-runtime.jar

 

jsp编译必要jar包,除此之外还需要jsp中引用类的jar:

D:/Tomcat5.5/common/lib/commons-el.jar
D:/Tomcat5.5/common/lib/jasper-compiler.jar
D:/Tomcat5.5/bin/commons-logging-api-1.1.1.jar
D:/Tomcat5.5/common/lib/jsp-api.jar
D:/Tomcat5.5/common/lib/jasper-compiler-jdt.jar
D:/Tomcat5.5/common/lib/servlet-api.jar
D:/Tomcat5.5/common/lib/jasper-runtime.jar
D:/Tomcat5.5/server/lib/catalina-ant.jar

 

如果在tomcat web环境下运行工程环境加入ant的jar就可以

http://tomcat.apache.org/tomcat-7.0-doc/api/org/apache/jasper/JspC.html

你可能感兴趣的:(使用org.apache.jasper.JspC编译jsp文件)