我知道有一些 JAVA_OPTS
可以设置为远程调试 Java 程序。
它们是什么,它们是什么意思?
原文由 paulgreg 发布,翻译遵循 CC BY-SA 4.0 许可协议
我知道有一些 JAVA_OPTS
可以设置为远程调试 Java 程序。
它们是什么,它们是什么意思?
原文由 paulgreg 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 Java 5.0 之前,使用 -Xdebug
和 -Xrunjdwp
参数。这些选项在以后的版本中仍然有效,但它将以解释模式而不是 JIT 运行,后者会更慢。
从 Java 5.0 开始,最好使用 -agentlib:jdwp
单个选项:
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1044
-Xrunjdwp
或 agentlib:jdwp
参数的选项是:
transport=dt_socket
: 表示连接JVM的方式(socket是个不错的选择,可以用来调试远方的电脑)address=8000
: TCP/IP 端口公开,从调试器连接,suspend=y
:如果为“y”,则告诉 JVM 等待调试器连接后开始执行,否则(如果为“n”),立即开始执行。原文由 paulgreg 发布,翻译遵循 CC BY-SA 3.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
我已将 这篇文章 加入书签,了解如何为 Java 5 及更低版本设置它。
基本上 运行它:
对于 Java 5 及更高版本,运行它:
如果您希望 Java 在执行应用程序之前 等待您连接,请将
suspend=n
替换为suspend=y
。