Skip to content

Commit 4d08be9

Browse files
authored
Update 20.5.3 Remote debug tunnel.md
1 parent 0075fdb commit 4d08be9

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

III. Using Spring Boot/20.5.3 Remote debug tunnel.md

+10
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,13 @@
22
Java的远程调试在诊断远程应用问题时很有用,不幸的是,当应用部署在你的数据中心外时,它并不总能够启用远程调试。如果你使用基于容器的技术,比如Docker,远程调试设置起来非常麻烦。
33

44
为了突破这些限制,devtools支持基于HTTP的远程调试通道。远程客户端在8000端口提供一个本地server,这样远程debugger就可以连接了。一旦连接建立,调试信息就通过HTTP发送到远程应用。你可以使用`spring.devtools.remote.debug.local-port`属性设置不同的端口。
5+
6+
你需要确保远程应用启动时开启了远程调试功能,通常,这可以通过配置`JAVA_OPTS`实现,例如,对于Cloud Foundry,你可以将以下内容添加到manifest.yml:
7+
```properties
8+
---
9+
env:
10+
JAVA_OPTS: "-Xdebug -Xrunjdwp:server=y,transport=dt_socket,suspend=n"
11+
```
12+
**** 注意你不需要传递一个`address=NNNN`的配置项到`-Xrunjdwp`,如果遗漏了,java会使用一个随机可用端口。
13+
14+
调试基于Internet的远程服务可能很慢,你可能需要增加IDE的超时时间。例如,在Eclipse中你可以从`Preferences…`选择`Java` -> `Debug`,改变`Debugger timeout (ms)`为更合适的值(60000在多数情况下就能解决)。

0 commit comments

Comments
 (0)