【发布时间】:2015-09-10 17:09:15
【问题描述】:
我在使用 Intellij IDEA 社区版中的热插拔功能时遇到了麻烦。我的是 v 14.1.4。
每次我启动调试并更改 java 代码后,我已经单击了重新构建项目并在确认重新加载类时按“是”。 Intellij 报告已重新加载更改的类,但应用程序结果与以前相同。我只是在尝试使用System.out.println、字符串连接等内容的最简单的Java应用程序(即不在Tomcat、applet等场景中)。我在调试模式下更改的只是方法主体代码,而不是方法签名/姓名。看不懂。
在 Eclipse 中我直接修改代码然后按保存,就可以了。
出了什么问题?
(备注:
事实上,我正在尝试使用 DCEVM 使结构更改成为可能(例如更改类名、方法名、添加方法等),认为它可以解决 Intellij 中发现的热插拔问题。不用说,它没有用。
在eclipse中,我成功使用了DCEVM,并且可以在调试的时候改变方法名。
我进一步尝试了 hotswap-agent ,但它仍然不起作用;我看到一篇文章说 IDE 必须通过端口 5000 JDPA 连接到 JVM,但无论我如何尝试,Intellij 控制台显示它仍在通过随机端口(下面的 51018)连接:
"C:\Program Files\Java\jdk1.8.0_60\bin\java" -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:51018...."
连接到目标VM,地址:'127.0.0.1:51018',传输:'socket'
是否可以强制它通过一个特定端口连接?
在运行/调试配置中添加DEBUG_OPT环境变量不起作用)
【问题讨论】:
标签: java intellij-idea intellij-14 hotswap dcevm