3

在为生产环境准备 WAR 时,是否有打包 JSP 的“标准”实践?

它们是否包含在“.jsp”文件中?

还是作为预编译的 Java 文件或预编译的类文件包含在内?

4

3 回答 3

3

Servelts/JSP 规范没有提到预编译 JSP 使这个特性特定于容器实现。您可以为特定容器预编译,例如 Tomcat 或 WebLogic,您肯定会发现 Ant 任务可以这样做。

一般来说,当你打包你的应用程序时,你就知道你的目标。如果它不止一个容器(比如您打包了一个可下载的产品),那么您唯一的选择是将原始 JSP 打包到您的 WAR 文件中。尽管如此,当您在开发和/或测试时,您当然可以将预编译作为构建过程的一部分,以 a) 验证您的 JSP 是否正确并 b) 加快启动时间。如果您在构建软件时需要额外的验证步骤,您甚至可以让 Eclipse 为您完成这项工作。

我不认为有一种行业惯例可以采取一种或另一种方式。根据我的经验,JSP 通常被打包为“原始”(未预编译)用于部署和分发,但作为构建/测试过程的一部分进行预编译。

于 2012-05-02T13:58:53.073 回答
2

根据我的经验,它们只是作为 .jsp 文件在 WAR 中提供。应用服务器会自动将 .jsp 编译成一个类文件。有关 jsp 生命周期的更多信息,请参见此处

于 2012-05-02T13:36:06.250 回答
0

它们本身被打包为 .jsp 文件。请注意 jsp 文件大小限制 64K jsp 文件大小限制

于 2012-05-02T13:36:34.983 回答