我最近开始了一项新工作,其中我必须修复错误并添加到一套 GWT 应用程序中,这些应用程序多年来有很多贡献者/开发人员:(
App Server: Tomcat 6.0.16
JRE: Java 6
GWT: 2.5.0
Eclipse: Juno
这种配置的奇怪之处在于,对于套件中的每个应用程序(大约有 4 个),客户端代码被分离到它自己的 war 文件中,而服务器端代码被分离到几个 war 文件中。问题是各种组件(war 文件)相互依赖并在运行时交互。
要求
基本上,我已经进行了服务器端调试,但我想通过 Eclipse 进行客户端调试;到目前为止,我还不能。
代码布局
当代码完全部署到 Tomcat 时,它看起来像这样:
- 网络应用
- 服务器件1
- 网络信息
- 班级
- ...
- web.xml
- ...
- 班级
- 网络信息
- 服务器件2
- 网络信息
- 班级
- ...
- web.xml
- ...
- 班级
- 网络信息
- 客户端App1
- 网络信息
- web.xml
- 索引.html
- ...
- 网络信息
- 客户端App2
- 网络信息
- web.xml
- 索引.html
- ...
- 网络信息
- 客户端App3
- 网络信息
- web.xml
- 索引.html
- ...
- 网络信息
- 服务器件1
过往的经验
在我上一份工作中,我的团队是唯一使用 GWT 和 Maven 进行开发的团队。我们能够设计和实现应用程序,因此我们保持简单。
对于每个应用程序,我们将所有客户端和服务器代码保存在 1 个 WAR 文件中。
我们创建的所有共享组件(窗口管理系统等)都经过 JAR 编译并包含在每个应用程序的 WAR 文件中。
以这种方式进行操作可以实现非常简单的调试设置;在 Tomcat 或 Weblogic 中运行应用程序时,我们能够使用 Eclipse 调试客户端和服务器代码。