1
为什么我需要重新启动App Engine
服务器(Jetty)Eclipse
里面当我修改Servlet
但不是当我修改Jsp
文件?即使Jsp
文件被Servlet容器转换为Servlet
。需要重新启动App Engine服务器时修改Servlet
对于正常的Web应用程序,我在Eclipse
的Tomcat
中遇到了同样的问题。
为什么我需要重新启动App Engine
服务器(Jetty)Eclipse
里面当我修改Servlet
但不是当我修改Jsp
文件?即使Jsp
文件被Servlet容器转换为Servlet
。需要重新启动App Engine服务器时修改Servlet
对于正常的Web应用程序,我在Eclipse
的Tomcat
中遇到了同样的问题。
因为servlet容器是将JSP编译为servlet的容器。因此,它可以轻松检测到JSP
已被修改,recompile it on the fly
并重新加载新生成的servlet类。
Servlets
另一方面是compiled before being deployed
,如果不重新部署应用程序,它们不应该被修改。
但'jsp'作为'class'文件部署到Tomcat。是什么使它不同于同一个'servlet''类文件?当你说它是将'jsp编译为servlet'的servlet容器时,是否意味着'servlet to class'的编译是由另一个组件完成的? – h4k1m
不,通常情况下,JSP文件按原样部署,容器将其编译为servlet .java和.class文件。 –
这是有道理的。 – h4k1m