当前位置: 代码网 > it编程>编程语言>Java > IntelliJ IDEA是如何在不依赖JMX的情况下识别Spring Boot项目的端口号的?

IntelliJ IDEA是如何在不依赖JMX的情况下识别Spring Boot项目的端口号的?

2025年03月29日 Java 我要评论
intellij idea 巧妙识别spring boot 端口号的秘密使用intellij idea ultimate启动spring boot项目时,即使server.port=0且关闭日志输出,

intellij idea是如何在不依赖jmx的情况下识别spring boot项目的端口号的?

intellij idea 巧妙识别spring boot 端口号的秘密

使用intellij idea ultimate启动spring boot项目时,即使server.port=0且关闭日志输出,idea依然能神奇地显示项目端口号。 坊间传闻这依赖于jmx,但事实并非如此。禁用jmx后,idea确实无法识别端口号,然而在jconsole中也找不到对应端口信息。

真相是:intellij idea 通过java agent机制实现这一功能。启动项目时,idea注入java agent代码到项目进程中。这些代码启动一个服务,响应idea指令并返回进程信息,包括端口号。

这与rmi (远程方法调用) 类似,idea 通过此服务与项目进程通信,从而获取端口号,无需依赖jmx。 因此,idea能够在不依赖jmx的情况下准确识别spring boot项目的端口号。

以上就是intellij idea是如何在不依赖jmx的情况下识别spring boot项目的端口号的?的详细内容,更多请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com