我正在编辑直接驻留在tomcat / webapps / myapp / WEB-INF中的JSP文件,但是要查看更改,我必须重新启动服务器。据我所知,JSP更改不需要您重新启动服务器。我发现与自动重新加载有关的唯一
Set to true if you want Catalina to
monitor classes in /WEB-INF/classes/
and /WEB-INF/lib for changes, and
automatically reload the web
application if a change is detected.
我在context.xml中使用了这个属性,但仍然存在问题。什么可能是没有检测到JSP文件的更改而不重新启动的另一个可能的原因?
@Bozho:
这是web.xml的摘录。我需要改变什么吗?
<servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>fork</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>xpoweredBy</param-name> <param-value>false</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet>In the tomcat docs,看开发设置。必须将其设置为true才能重新加载jsps。
development – Is Jasper used in development mode? If true, the frequency at which JSPs are checked for modification may be specified via the modificationTestInterval parameter.true or false, default true.
这在你的CATALINA_HOME / conf / web.xml中
另外,如果您需要在生产环境中刷新jsp而不重新启动,则可以转到CATALINA_HOME / work / Catalina / localhost / contentName / org / apache / jsp,并删除your_jsp.java和your_jsp.class文件。他们将在下次访问时重新创建。
编辑:提供您的配置后,并评论不刷新的内容,我有另一个虽然:清除您的浏览器缓存,或从另一个浏览器打开页面。