首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Tomcat上运行Errai时,如何启用热重新加载?

在Tomcat上运行Errai时,如何启用热重新加载?
EN

Stack Overflow用户
提问于 2019-04-09 20:57:13
回答 1查看 99关注 0票数 1

我正在用Errai 4开发一个项目,和往常一样,我可以运行"mvn : run“,而热重新加载只是工作,即我改变模型或视图,我只需要刷新浏览器。

现在我需要它,但是在Tomcat 7之上运行我的Errai应用程序。

使用Tomcat的项目类似于https://github.com/stbland/errai-tutorial-tomcat

问题是,当我只使用mvn gwt:run或类似的方法在前端进行更改时,如何使热重新加载与Tomcat 7一起工作。

逐步最终解决方案:

解决这个问题的信息:

安装原始项目

对于这个例子,我们将使用errai教程。

运行在Tomcat

监听更改

  • cd errai教程
  • mvn gwt:编译
  • mvn gwt:run

现在您可以在web浏览器中打开http://localhost:8080/errai-tutorial/

为了进行热重加载,您需要在项目中导入这个类:

并以这样的方式(SuperDevModeHelper.devModeOn())将其简称为:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-10 09:59:25

看看这个原型https://github.com/tbroyer/gwt-maven-archetypes/

模块化的webapp将tomcat和gwt配置为一起工作。热重加载工作是因为gwt:codeserver生成一个特殊的引导程序(you-app.notache.js),该引导程序在完成后立即运行gwt编译并重新加载。要使其工作,您需要将gwt:codeserver生成的launcherDir加载到tomcat上下文中,这是在这个原型中使用context.xml完成的。

或者,您可以在自己的应用程序中添加一些编译触发器,这样就可以使用快捷方式启动编译。这就是激发编译(DevModeHelper)所需的全部内容。只需在应用程序入口点添加快捷处理程序并调用devModeOn()即可。如果不希望将其添加到最终编译中,则只在System.getProperty("superdevmode").equals("on")true时才安装事件侦听器。在这种情况下,第一次使用经典的Dev Mode On书签,然后使用您的自定义快捷方式。我们使用这个策略,而且效果很好。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55601221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档