当前位置 : 主页 > 编程语言 > java >

为什么我的JSP更改没有重新启动Tomcat?

来源:互联网 收集:自由互联 发布时间:2021-06-25
我正在编辑直接驻留在tomcat / webapps / myapp / WEB-INF中的JSP文件,但是要查看更改,我必须重新启动服务器。据我所知,JSP更改不需要您重新启动服务器。我发现与自动重新加载有关的唯一
我正在编辑直接驻留在tomcat / webapps / myapp / WEB-INF中的JSP文件,但是要查看更改,我必须重新启动服务器。据我所知,JSP更改不需要您重新启动服务器。我发现与自动重新加载有关的唯一配置是 reloadable = “true”

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文件。他们将在下次访问时重新创建。

编辑:提供您的配置后,并评论不刷新的内容,我有另一个虽然:清除您的浏览器缓存,或从另一个浏览器打开页面。

网友评论