3

我发现的用于调试 GWT 的所有教程/链接/文章都涉及:

  • 使用 Google-Eclipse 插件;和
  • 从 Eclipse 内部以开发模式运行 GWT (使用 Eclipse 作为 Web 容器)

我想知道如何在 GWT 应用程序从非 Eclipse Web 容器运行时对其进行调试;特别是一个成熟的 Tomcat 实例,它要么运行在同一台机器 ( localhost:8080) 上,要么运行在其他地方的远程机器上。

理想情况下,我可以通过浏览器正常访问我的应用程序,但是当我与应用程序交互(单击按钮等)时,Eclipse 将在调试模式下运行,并且会遇到我提前设置的断点时间(部署前)。

令我惊讶的是,在这方面我找不到太多东西,当然也没有确定的。所以我想知道是否有任何厌战的 GWT 退伍军人可以阐明我如何做到这一点。

如果可能的话,我宁愿安装 Google-Eclipse 插件,除非这是实现这一目标的唯一选择。提前致谢!

4

2 回答 2

2

我不确定您是否错过了此文档。我曾经在我的服务器在 VM 中运行的开发模式下进行远程调试。我可以建议你两个解决方案。

如果您使用的是 GWT 2.5 之前的版本,则必须noserver在启动配置中提供参数,提供服务器中主机页面的 url(Tomcat 等)。我已经从上述文档中提取了这些步骤。

  1. 根据需要配置服务器;请注意包含 GWT 应用程序主机页面的 URL。
  2. 随意安排服务器上的所有静态内容文件(例如主机 HTML 页面、图像、CSS 等)。
  3. 编辑您的开发模式执行脚本(例如您的 Eclipse 运行配置或由 GWT webAppCreator 生成的 ant 开发构建目标)并添加或更新以下选项: • 添加 -noserver 命令行参数。• 更改参数列表末尾的 URL 以匹配您在步骤 #1 中记录的 URL。
  4. 使用 ant 构建目标编译您的应用程序一次。理想情况下,您可以使用 GWT 的 -war 选项将输出文件直接生成到外部服务器的静态内容文件夹中。否则,您需要将 GWT 输出文件夹从 war/ 复制到外部服务器的静态内容。

如果您使用的是 2.5 或更高版本,则可以使用超级开发模式。在超级开发模式下,您可以使用浏览器进行调试,因此不需要 Eclipse 插件。我已经尝试过了并且工作正常。但是我无法使用源映射加载 java 源。这是 superdevmode 配置的文档

于 2013-05-19T14:01:45.220 回答
-1

这真的很简单,只需按照以下步骤操作:

获取 Eclipse 的谷歌插件

在 Eclipse 中,右键单击您的项目并选择 Debug as -> Web Application (running on external server)

在 tomcat 上输入您的网络应用程序的 URL(例如

http://localhost:8080/YourApp/YourApp.html

eclipse 会给你一个新的——它会添加像 ?gwt.codesvr=127.0.0.1:9997 这样的东西,就是这样。只需设置断点并进行调试!

也看看这个

于 2013-05-19T13:58:55.917 回答