我为调试gwt找到的所有教程/链接/文章都涉及:
使用google eclipse插件;以及
在eclipse内部以开发模式运行gwt(eclipse作为web容器)
我想知道如何在gwt应用程序从非eclipse web容器运行时进行调试;特别是在同一台计算机(localhost:8080
)上运行或在其他远程计算机上运行的成熟tomcat实例。
理想情况下,我可以通过浏览器正常地访问我的应用程序,但当我与应用程序交互时(单击按钮等),eclipse将以调试模式运行,并将命中我提前设置的断点(在部署之前)。
令我惊讶的是,在这件事上我找不到太多的线索,当然也没有确切的证据。所以我想知道是否有任何厌倦战斗的gwt退伍军人可以让我明白我该如何做到这一点。
如果可能的话,我宁愿不安装google eclipse插件,除非这是实现这一点的唯一选择。提前谢谢!
最佳答案
我不确定你是否错过了这个documentation。我以前在dev模式下进行远程调试,服务器在vm中运行。我可以给你两个建议。
如果您使用的是gwt 2.5之前的版本,则必须在launch configuration中提供noserver
参数,为服务器(tomcat等)中的主机页提供url。我已经从上面的文档中提取了步骤。
根据需要配置服务器;注意包含gwt应用程序主机页的url。
在服务器上随意排列所有静态内容文件(如宿主html页面、图像、css等)。
编辑开发模式执行脚本(例如eclipse运行配置或gwt webappcreator生成的ant开发构建目标)并添加或更新以下选项:
•添加-noserver命令行参数。
•更改参数列表末尾的url,使其与步骤1中记录的url匹配。
使用ant构建目标编译应用程序一次。理想情况下,可以使用gwt的-war选项直接将输出文件生成到外部服务器的静态内容文件夹中。否则,您需要将gwt输出文件夹从war/复制到外部服务器的静态内容。
如果使用的是2.5或更高版本,则可以使用超级开发模式。在超级开发模式下,您可以使用浏览器进行调试,因此不需要eclipse插件。我试过了,效果很好。但是,我无法使用源映射加载Java源代码。这里是superdevmode配置的documentation。
关于java - 在Tomcat上运行时在本地/远程调试GWT应用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16635158/