tomcat和.class文件

时间:2013-02-18 17:09:28

标签: jsp java-ee tomcat

.class文件驻留在哪里,从.jsp文件转换?

我的.war文件包含.jsp文件,但我不希望那些文件提供给我的客户。

我不想提供.jsp文件(因为它有源代码),只提供.class文件,以便网站可以运行,但不可修改。

我有哪些选择?

2 个答案:

答案 0 :(得分:1)

您需要 JSP预编译。在构建期间,一些工具(jspc)执行Tomcat首次加载时按需执行的操作 - 将它们编译为servlet并生成适当的web.xml代码段。

为所有JSP文件生成servlet时,删除它们是安全的。避免将生成的servlet签入VCS是个好主意。

请参阅JSP Compilation Support for Maven 2How can I make Tomcat pre-compile JSPs on startup?

答案 1 :(得分:1)

您的问题已在此处回答:"Where are compiled JSP Java (*_jsp.java) files?"

  

默认情况下,已编译的JSP文件位于Tomcat环境的/ work文件夹中。

或者,如果您正在使用Eclipse IDE并在工作空间中发布应用程序(这是默认行为),您可能会在某些路径中找到工作目录,如:

  

workspace.metadata.plugins \ org.eclipse.wst.server.core \ TMP0 \工作\卡塔利娜\本地主机\的HelloWorld \组织\阿帕奇\ JSP \ test_jsp.class

但是,如果您需要所有已编译的JSP(* _jsp.class)文件,则可以使用以下选项:按照documentation的说明使用Tomcat jspc工具和ant;使用wget通过发出如下命令递归请求tomcat服务器中的所有* .jsp页面,或使用IDE的预编译JSP页面选项让IDE为您完成工作。

wget -r --no-parent -A.jsp http://domain/your-project/

所以它现在应该全部由tomcat缓存。