编译 JSP 文件
另请参见
在编译 JSP 文件时,可以先检测语法问题,然后在服务器上执行该文件。编译操作还会将 JSP 文件转换为 Servlet。因此,编译过程可以发现在转换和编译时出现的语法错误。如果 JSP 文件引用某个标记文件,则将引用的标记文件与 JSP 文件一起编译。
编译 JSP 文件:
- 执行以下某项操作:
- 编译单个文件。在“项目”窗口中,右键单击 JSP 文件,然后从弹出式菜单中选择“编译文件”(F9)。
- 编译选定的文件。在“项目”窗口中,使用 Ctrl 键和 Shift 键选择要编译的文件,右键单击选定的文件,然后从弹出式菜单中选择“编译文件”(F9)。
- 编译项目中的所有 JSP 文件。在“项目”窗口中,右键单击项目节点,选择“属性”,单击“编译”,然后选中“生成期间测试编译所有 JSP 文件”复选框。关闭“项目属性”对话框,右键单击项目节点,然后从弹出式菜单中选择“生成项目”。
 |
缺省情况下,IDE 在生成项目时不编译 JSP 文件。这是因为 JSP 文件必须转换为 Servlet 后,才能进行编译。因此,JSP 编译过程可能需要很长的时间。 |
- 在“输出”窗口中,单击某个错误,即可在源代码编辑器中跳到该错误的出处。
疑难解答
以下列表列出了一些典型的编译消息以及可能的解决方法:
- 无效的表达式。可能由不匹配的大括号 ({) 导致。查找延伸超过 EL 表达式的 EL 语法突出显示。如果缺少右括号,源代码编辑器会将下一个左括号自动突出显示为错误。当您选择一个括号时,源代码编辑器将突出显示匹配的括号。
- 缺少等号。 此错误可能是因为缺少引号 (") 导致的。查找颜色与文本相同的代码或颜色与代码相同的文本。查找延伸超过标记的结束分界符的标记突出显示。
- 缺少强制性属性。可能由错误拼写的属性导致。使用代码完成功能验证拼写是否正确。
- 未结束的标记。可能因为指令的结束分界符中缺少百分号 (%) 导致。查找颜色与开始分界符不同的结束分界符。
- 标记必须是空的。检查标记的结束分界符中是否缺少正斜杠 (/)。
忘记用大括号 ({}) 将 EL 表达式分界是一个常见错误,无法通过编译来捕获它,因为文本是有效的语法。要捕获此类错误,请查找没有使用专门用于 EL 表达式的颜色突出显示的表达式。
如果您看到以下编译输出,则可能存在内部缓存问题。您可能需要重新启动 IDE 才能编译 JSP 文件。
java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/SimpleTagSupport
- 另请参见
- 关于 JSP 语法
- 编辑 JSP 文件
- 查看 JSP 的 Servlet
- 关于调试和测试 Web 应用程序
法律声明