如何本地调试Java 11版本的Google App Engine应用?
如何本地调试Java 11版本的Google App Engine应用?
我完全懂你的困扰——之前用Eclipse插件一键调试的日子太省心了,现在GAE Java 8弃用,IDE支持断档确实头疼。下面给你几个可行的本地调试方案,亲测能用:
方案一:用gcloud CLI启动带调试端口的本地服务器
首先在你的GAE项目根目录,执行以下命令启动本地服务器并开启远程调试端口:
gcloud app run --debug=5005
这里的5005是常用的调试端口,如果你遇到端口占用问题,换成其他未被占用的端口(比如5006)即可。执行后,本地GAE服务器会启动并监听指定端口,等待调试器连接。
方案二:在IDE中配置远程调试
不管是IntelliJ还是Eclipse,都可以通过远程调试模式连接到本地GAE服务器,步骤如下:
IntelliJ IDEA配置步骤
- 打开你的GAE Java 11项目,点击右上角的「Add Configuration」
- 在弹出的配置窗口中,选择「Remote JVM Debug」模板
- 给配置起个好记的名字(比如「GAE Local Debug」),主机填写
localhost,端口填写你刚才在gcloud命令中指定的端口(比如5005) - 点击「Apply」保存配置,然后启动这个调试配置
- 现在IDE就会和本地GAE服务器建立连接,你可以正常设置断点、单步调试代码了
Eclipse配置步骤
- 打开项目,点击顶部菜单栏的「Run」→「Debug Configurations」
- 在左侧列表找到「Remote Java Application」,右键选择「New」创建新配置
- 项目选择你的GAE Java 11项目,主机填写
localhost,端口对应gcloud命令中的调试端口 - 点击「Debug」启动调试,就能和本地服务器建立连接开始调试了
注意事项
- 启动顺序很重要:先运行gcloud的本地服务器命令,再启动IDE的远程调试配置,不然IDE会提示无法连接端口
- 如果调试过程中出现连接失败,先检查端口是否被占用,或者gcloud服务器是否正常启动
- 虽然官方说Cloud Code不再支持IntelliJ的Java 11,但如果你的IntelliJ版本较新,也可以尝试手动配置Cloud Code的本地运行任务,但上述远程调试方法稳定性更高
备注:内容来源于stack exchange,提问作者Mike Dee
相关产品推荐
相关产品推荐

