Chinaunix首页 | 论坛 | 博客
  • 博客访问: 766910
  • 博文数量: 160
  • 博客积分: 2516
  • 博客等级: 大尉
  • 技术积分: 1511
  • 用 户 组: 普通用户
  • 注册时间: 2004-10-24 17:58
文章分类

全部博文(160)

文章存档

2019年(2)

2018年(3)

2017年(15)

2016年(3)

2015年(11)

2014年(3)

2013年(1)

2012年(3)

2011年(17)

2010年(25)

2009年(17)

2008年(13)

2007年(14)

2006年(21)

2005年(10)

2004年(2)

分类: Java

2007-03-23 14:09:13

使用 WebLogic JSP 编译器

不赞成使用 WebLogic JSP 编译器。BEA 建议使用 WebLogic appc 编译器 weblogic.appc 编译 EAR 文件、WAR 文件和 EJB。

为了获得更好的编译性能,WebLogic JSP 编译器将 JSP 直接转换为磁盘上的类文件,而不是先在磁盘上创建一个 Java 文件,然后将其编译为类文件。Java 文件仅驻留在内存中。

要看到生成的 Java 文件,请打开可将内存中的 Java 文件转储到磁盘的 -keepgenerated 标志。

注意: 在 JSP 编译期间,既不会调用命令行标志 (compilerclass),也不会调用描述符元素。

JSP 编译器语法

JSP 编译器的工作方式与其他 WebLogic 编译器(包括 RMI 和 EJB 编译器)的工作方式在很大程度上相同。要启动 JSP 编译器,请输入以下命令。

$ java weblogic.jspc -options fileName

fileName 替换为要编译的 JSP 文件的名称。可在目标 fileName之前或之后指定任何 options。以下示例使用 -d 选项将 myFile.jsp 编译到目标目录 weblogic/classes 中:

$ java weblogic.jspc -d /weblogic/classes myFile.jsp
注意: 如果正在预编译属于 Web 应用程序的一部分的 JSP,或正在预编译引用了 Web 应用程序中的资源(如 JSP 标记库)的 JSP,则必须使用 -webapp 标志指定该 Web 应用程序的位置。以下 JSP 编译器选项列表中描述了 -webapp 标志。

JSP 编译器选项

使用以下选项的任何组合:

-classpath

添加组成所需 CLASSPATH 的目录的列表(在 Windows NT/2000 平台上由分号分隔,在 UNIX 平台上由冒号分隔)。包括包含 JSP 所需的任何类的目录。例如(要在一行上输入):
$ java weblogic.jspc
   -classpath java/classes.zip;/weblogic/classes.zip
   myFile.JSP

-charsetMap

指定 JSP contentType 指令中使用的 IANA 或非正式字符集名称到 Java 字符集名称的映射。例如: -charsetMap x-sjis=Shift_JIS,x-big5=Big5
最常用的映射已内置到 JSP 编译器中。仅在未识别出所需的字符集映射时,才使用此选项。

-commentary

使 JSP 编译器将来自 JSP 的注释包含在生成的 HTML 页中。如果忽略此选项,则注释不会出现在生成的 HTML 页中。

-compileAll

递归编译当前目录中或通过 -webapp 标志指定的目录中的所有 JSP。(请参阅此选项列表中的 -webapp 条目)。还会编译子目录中的 JSP。

-compileFlags

将一个或多个命令行标志传递到编译器。将多个标志括在引号中,以空格分隔。例如: java weblogic.jspc -compileFlags "-g -v" myFile.jsp

-compiler

指定要用于从生成的 Java 源代码编译类文件的 Java 编译器。使用的默认编译器为 javac。除非您显式指定编译器的绝对路径,否则 Java 编译器程序应位于您的 PATH 中。

-compilerclass

将 Java 编译器作为 Java 类(而不是本地可执行文件)运行。

-d

指定已编译输出(即类文件)的目标。将此选项用作将已编译的类放入已位于 CLASSPATH 中的目录的快捷方式。

-depend

如果以前为某个 JSP 生成的类文件具有比该 JSP 源文件更新的日期戳,则不会重新编译该 JSP。

-debug

在启用调试的情况下进行编译。

-deprecation

将源文件编译为类文件时,如果在生成的 Java 源文件中使用了不赞成使用的方法,则会对此做出警告。

-docroot directory

请参阅 -webapp

-encoding default|named character encoding

有效参数包括 (a) default,它指定使用 JDK 默认字符编码,(b) 指定的字符编码,如 8859_1。如果未指定 -encoding 标志,则使用字节数组。

-g

指示 Java 编译器将调试信息包含在类文件中。

-help

显示 JSP 编译器的所有可用标志的列表。

-J

获取传递到您的编译器的选项的列表。

-k

当使用单个命令编译多个 JSP 时,即使无法编译这些 JSP 中的一个或多个 JSP,编译器也会继续进行编译。

-keepgenerated

保留编译过程中作为中间级创建的 Java 源代码文件。通常情况下,这些文件会在编译之后删除。

-noTryBlocks

如果 JSP 文件具有许多自定义 JSP 标记或嵌套很深的自定义 JSP 标记,并且您在编译时收到 java.lang.VerifyError 异常,则使用此标志可使 JSP 正确进行编译。

-nowarn

从 Java 编译器关闭警告消息。

-noPrintNulls

在 JSP 表达式中将“null”显示为“”。

-O

在打开优化的情况下编译 Java 源文件。此选项会替换 -g 标志。

-package packageName

设置预规划给生成的 Java HTTP Servlet 的包名的包名。默认为 jsp_servlet

-superclass classname

设置由生成的 Servlet 扩展的超类的类名。命名的超类必须是 HttpServletGenericServlet 的派生。

-verbose

verbose 标志传递到使用 compiler 标志指定的 Java 编译器。有关详细信息,请参阅编译器文档。默认值为 Off。

-verboseJavac

输出由指定的 JSP 编译器生成的消息。

-version

输出 JSP 编译器的版本。

-webapp directory

展开的目录格式的包含 Web 应用程序的目录名称。如果 JSP 包含对 Web 应用程序中的资源(如 JSP 标记库或其他 Java 类)的引用,则 JSP 编译器将在此目录中查找这些资源。如果在编译需要 Web 应用程序中的资源的 JSP 时省略此标志,则编译将失败。

预编译 JSP

可通过在 weblogic.xml 部署描述符的 元素中将 precompile 参数设置为 true,将 WebLogic Server 配置为在部署或重新部署 Web 应用程序时或在 WebLogic Server 启动时预编译您的 JSP。为避免每次服务器启动和定位其他服务器时都重新编译 JSP,请使用 weblogic.jspc 预编译它们,然后将它们放在 WEB-INF/classes 文件夹中,并归档在 .war 文件中。将源文件保留在与归档的 .war 文件分开的独立目录中能够消除因 JSP 依赖其中的一个类文件而引起错误的可能性。

阅读(5316) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~