🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 20.5.3 远程调试通道 Java的远程调试在诊断远程应用问题时很有用,不幸的是,当应用部署在你的数据中心外时,它并不总能够启用远程调试。如果你使用基于容器的技术,比如Docker,远程调试设置起来非常麻烦。 为了突破这些限制,devtools支持基于HTTP的远程调试通道。远程客户端在8000端口提供一个本地server,这样远程debugger就可以连接了。一旦连接建立,调试信息就通过HTTP发送到远程应用。你可以使用`spring.devtools.remote.debug.local-port`属性设置不同的端口。 你需要确保远程应用启动时开启了远程调试功能,通常,这可以通过配置`JAVA_OPTS`实现,例如,对于Cloud Foundry,你可以将以下内容添加到manifest.yml: ```text --- env: JAVA_OPTS: "-Xdebug -Xrunjdwp:server=y,transport=dt_socket,suspend=n" ``` **注** 注意你不需要传递一个`address=NNNN`的配置项到`-Xrunjdwp`,如果遗漏了,java会使用一个随机可用端口。 调试基于Internet的远程服务可能很慢,你可能需要增加IDE的超时时间。例如,在Eclipse中你可以从`Preferences…`选择`Java` -> `Debug`,改变`Debugger timeout (ms)`为更合适的值(60000在多数情况下就能解决)。