我在 Eclipse 中有一个 JSF 项目。现在,每次更改 .xhtml
文件时,我都必须停止 Tomcat 服务器,然后再次启动 Tomcat 服务器。 有没有其他方法可以连续构建和测试我的应用程序,而无需每次进行更改时都重新启动服务器?
请您参考如下方法:
当您需要开发 JSF 项目时,至少需要进行两处更改:
通过更改 Tomcat 设置来告诉 Eclipse 自动发布更改,如下所示(双击“服务器” View 中的 Tomcat 服务器条目以获取此屏幕):
即默认为“从不自动发布”。
通过将以下内容添加到
web.xml
中,告诉 JSF Web 应用程序当前处于开发模式:<context-param> <param-name>javax.faces.PROJECT_STAGE</param-name> <param-value>Development</param-value> </context-param>
这将改变一些内部工作方式,使开发人员更容易,例如禁用 Facelet 缓存和重新加载资源。在构建生产版本时不要忘记删除它,因为这会影响性能。此设置也可以通过 JNDI 设置。
另一种方法是从准系统 Tomcat 服务器迁移到普通的 JEE 服务器,例如 WildFly、Payara、Liberty 等。对于它们来说,不再需要上述 Eclipse 设置,您甚至可以实时编辑 bean 方法(在 Tomcat 上,您仍然需要为它们重新启动整个服务器)。