使用eclipse在tomcat上调试GWT

时间:2012-07-27 17:34:42

标签: eclipse debugging gwt tomcat

我正在使用GWT 2.4并且已经编写了大量代码。我理解GWT插件附带的Jetty服务器可以非常严格地控制可以在项目中使用的jar,以尽可能地模仿app引擎。我需要部署到tomcat 7.我在eclipse中修改了我的项目并“祝福”它作为一个动态的Web项目,所以我可以导出... WAR并将其上传到我的QA和生产tomcat。

我需要帮助让应用程序在嵌入式tomcat上运行(和调试)(就像一个诚实的动态Web项目)。我已经在eclipse中安装了tomcat,并且我已经部署了我的CAS服务器Web应用程序。

我在这里和其他地方准备好了很多旧的或令人困惑的帖子。基本上,我正在寻找与打包的Jetty服务器相同的调试环境,但是我自己在eclipse中使用WTP配置的tomcat ...所以我可以模仿我的生产环境(就像Jetty模仿app引擎)

感谢任何帮助。

1 个答案:

答案 0 :(得分:7)

它可能会更容易一点,但它是可能的。我是这样做的:

1。设置Web服务器

  • 使用Eclipse的 JavaEE 版本,我设置了Tomcat 7.0服务器适配器,并在Preferences > Server > Runtime Environments
  • 中定义了一个环境
  • File > New > Project... > Web/Dynamic Web Project
    • 选择我在第一步中设置的目标运行时
    • 重要提示:在“上下文根”中,输入/
  • 我创建了一个HTML文件和一个Servlet,然后尝试使用Debug As > Debug On Server
  • 运行设置

2。添加GWT代码服务器

  • Project > Properties > Google > Web Toolkit > Use Google Web Toolkit
  • 重要提示:我总是需要更改Java Build Path(Project > Properties > Java Build Path > Order and Export)中的顺序,请参阅http://code.google.com/p/google-web-toolkit/issues/detail?id=4479 - gwt-dev.jar必须在顶部路径。
  • Project > Properties > Google > Web Application:战争目录=“WebContent”,同时选中“从此目录启动并部署”
  • 我创建了一些示例GWT内容(我创建了一个示例GWT项目,并将大部分内容复制过来)
  • 我尝试GWT编译项目。这告诉我,如果我的构建路径顺序正确 - 否则,编译器会在“java.lang.NoSuchFieldError:warningThreshold”中提前失败。
  • Debug As > Web Application - 只是为了创建调试配置。停止调试。编辑调试配置(Run > Debug Configurations...),取消选择“运行内置服务器”。再次开始调试。

现在,最后,我可以调试服务器和客户端部分(我仍然需要单击两个Debug图标来启动它们!)我可以从“开发模式”视图和服务器端管理客户端“服务器”视图。在一天结束时,它运行良好,使用“资源更改时自动发布”功能(Servers view > myServerName > Open > Publishing),有时甚至比使用集成的Jetty更好。