【问题标题】:Why I need to restart Tomcat Apache server every time I change/edit my java servlet code为什么每次更改/编辑 java servlet 代码时都需要重新启动 Tomcat Apache 服务器
【发布时间】:2021-12-29 15:30:20
【问题描述】:

我在记事本中编写我的基本 servlet 程序,但每次我在我的 java 文件中进行更改并在编译它之后,我都需要重新启动我的 tomcat apache 才能在浏览器上看到这些更改。是否有任何解决方案,因为我必须处理项目并且需要经常更改。 我已尝试通过服务管理器自动提供服务。

【问题讨论】:

  • 你知道什么是编译吗?
  • 您不需要重新启动 Tomcat,但您需要重新部署应用程序,或者使用支持热重载的部署方式。
  • 只需使用像样的 IDE 而不是记事本。他们会为您完成繁重的工作
  • 您可以在上下文文件中添加reloadable="true"(例如默认的conf/context.xml)。参照。 documentation.

标签: java servlets tomcat8


【解决方案1】:

Servlet/Java 代码中所做的更改不会反映自身,我们必须重新编译 Java 代码并再次将应用程序部署到 Tomcat 服务器。只有经过这些工作服务器才能获得修改后的值。

如果您不想手动操作,则可以在 context.xml 文件中设置reloadable="true"。现在 Catalina(tomcat 服务器)将监视 /WEB-INF/classes/ 和 /WEB-INF/lib 中的类的更改,并在检测到更改时自动重新加载 Web 应用程序。此功能在应用程序开发期间非常有用,但它需要大量运行时开销,因此不建议在已部署的生产应用程序中使用。这就是该属性的默认设置为 false 的原因。但是,您可以使用 Manager Web 应用程序来按需触发重新加载已部署的应用程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-24
    • 1970-01-01
    • 2019-07-21
    • 1970-01-01
    • 2012-03-06
    • 2011-06-20
    • 2023-04-04
    相关资源
    最近更新 更多