更改 JSP 编译器

在默认情况下,Tomcat 5.5或更高版本使用一个绑定的 Eclipse JDT 编译器编译 JSP 页。你可以访问 http://www.eclipse.org/jdt/core 地址,查看 Eclipse JDT 核心页,了解该编译器的更多信息。如下图:

JDT 编译器是用纯 Java 编写的,在 Tomcat 上执行与 JDK 的 javac 命令相同。因为 Tomcat 绑定了JDT 编译器,所有 Tomcat 在仅仅只有 JRE 环境时,依然能够编译 JSP 页,充当 JSP 页容器。

查看你的 Tomcat 是否也是用了 JDT 编译器?

启动刚下载和安装好的 Tomcat,访问“/docs/introduction.html”页面,点击左边“Release Notes”菜单,打开发行说明信息(通过 Ctrl + F 打开搜索框,搜索 JDT),你会看到如下信息:

===================
Dependency Changes:
===================
Tomcat 7.0 is designed to run on Java SE 6 and later.

In addition, Tomcat 7.0 uses the Eclipse JDT Java compiler for
compiling JSP pages.  This means you no longer need to have the complete
Java Development Kit (JDK) to run Tomcat, but a Java Runtime Environment
(JRE) is sufficient.  The Eclipse JDT Java compiler is bundled with the
binary Tomcat distributions.  Tomcat can also be configured to use the
compiler from the JDK to compile JSPs, or any other Java compiler supported
by Apache Ant.

上面大概意思:Tomcat 7.0 使用 Eclipse JDT Java 编译器编译 JSP 页面。这意味着您不再需要拥有完整的用于运行 Tomcat 的 Java 开发工具包(JDK),只需一个 Java 运行时环境(JRE)就足够了。Tomcat 还可以配置为使用 JDK 中的编译器来编译JSP,或任何其他受 Apache Ant 支持的 Java 编译器。

配置 Tomcat 使用 Ant 编译 JSP 页面

如果你选择该种编译器模式,那你就可以配置 Ant 自身可支持的任何 Java 编译器。默认情况下,Ant 使用 JDK 的 javac 编译器。

要将 Tomcat 从使用默认 JDT 编译器改为 Ant 编译器,步骤如下:

(1)移除 JDT 编译器

将 Tomcat 的 %CATALINA_HOME%/lib 目录下的 ecj-4.4.2.jar 文件删除或者备份到其他目录。此时,重启 tomcat,访问 JSP 页面会抛出如下错误信息:

(2)添加 Ant 编译器

访问 Ant 官网,下载 Ant 安装包。下载地址 https://dlcdn.apache.org//ant/binaries/apache-ant-1.9.16-bin.zip

注意:1.9.16 版本运行时至少需要 Java 5。1.10.12 版本,运行时至少需要 Java 8。

a、将 ant.jar 文件拷贝到 CATALINA_HOME/lib 目录下

b、将 %JAVA_HOME%/lib 下的 tools.jar 文件拷贝到 CATALINA_HOME/lib 目录下

重启 Tomcat,访问 JSP 页面正常。

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号