为啥我们使用 jvm 参数来调试“server=y”?

Posted

技术标签:

【中文标题】为啥我们使用 jvm 参数来调试“server=y”?【英文标题】:why do we use jvm arguments for debugging "server=y"?为什么我们使用 jvm 参数来调试“server=y”? 【发布时间】:2012-01-26 09:06:13 【问题描述】:

在我们传递参数时使用 java 代码进行调试时,只有一个参数,即 server=y 我们为什么用它?有人可以提供有关它的所有详细信息吗???

我使用的参数如下- -Xdebug -Xrunjdwp:transport=dt_socket,address=4010,server=y,suspend=y

【问题讨论】:

【参考方案1】:

根据documentation:

如果为“y”,则侦听要附加的调试器应用程序;否则,附加到指定地址的调试器应用程序。

如果“y”且未指定地址,则选择一个传输地址以侦听调试器应用程序,并将该地址打印到标准输出流。

简而言之,它告诉应用程序像服务器一样工作并侦听调试器。

【讨论】:

以上是关于为啥我们使用 jvm 参数来调试“server=y”?的主要内容,如果未能解决你的问题,请参考以下文章

IDEA-断点、调试、远程JVM调试

调试Idea如何远程debug之SpringBoot jar包启动

教你一招!使用IDEA远程调试Tomcat...

JAVA远程调试

为啥 JVM 参数以“-D”开头?

为啥要对jvm做优化?