在我的 Windows 开发机器上,我安装了 IntelliJ,通过 Apache Web 服务器运行我的静态 html,并使用 Tomcat 运行 GWT-RPC 服务。除了调试 GWT-RPC 服务的服务器代码外,一切正常。是否仍然可以通过这种方式调试 GWT-RPC 服务器代码?
最佳答案
这是我的做法:
- 在 IntelliJ 中配置 tomcat 服务器实例,并确保您可以在没有 GWT 调试器的情况下启动您的应用程序。换句话说,在您的 IntelliJ IDEA 中编辑配置并添加 tomcat 本地服务器,然后选择要部署到 tomcat 的 war 文件
- 通过 IntelliJ 在 Debug模式下启动你的 tomcat
- 确保您可以打开您的应用程序并且它可以在您期望它工作的 URL 上工作,应该是这样的
http://localhost:8080/applicationContextThatYouSpecifiedInTomcatDeployentTabConfiguration
- 确保现在您可以通过在应用程序内部单击并检查请求是否在服务器上的适当断点处停止来调试服务器端。
- 在 IntelliJ 中创建 GWT 运行配置
- 确保您将开发模式参数设置为“-noserver -bindAddress 0.0.0.0” noserver 意味着当您从 intelliJ 启动 GWT 配置时,它不会启动嵌入式服务器,因为我们现在使用 Tomcat 作为我们的服务器.
- 在 Debug模式下通过 IntelliJ 运行 GWT 配置 - 是的,您现在有两个配置同时运行:一个用于客户端 (GWT) 调试,另一个用于服务器端 (Tomcat) 调试。
- 现在,在浏览器的 URL 末尾添加文本
?gwt.codesvr=127.0.1.1:9997
。 例如,如果在 URL 中你有http://localhost:8080/hiThereMyApp/index.html
新的 URL 应该看起来像http://localhost:8080/hiThereMyApp/index.html? gwt.codesvr=127.0.1.1:9997
附言有时浏览器的 gwt 插件会提示 127.0.1.1 主机不允许作为 GWT 代码库,在这种情况下,请尝试将 127.0.1.1
替换为 localhost
或您计算机的 ip 地址,或者尝试配置浏览器的 GWT 插件以实际允许您所需的 gwt 代码库。
关于java - 我可以调试由 Tomcat 运行的 GWT-RPC 程序和由 Apache Web 服务器运行的静态内容吗(使用 IntelliJ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19436451/