Java 播放框架2调试不工作

Java 播放框架2调试不工作,java,playframework,playframework-2.0,playframework-2.3,Java,Playframework,Playframework 2.0,Playframework 2.3,我在调试Play Framework应用程序(特别是代码热交换)时遇到了一个噩梦。我使用的是Activator1.3.2的最新版本,我使用的是Java而不是Scala 我使用activator-jvm debug 9999运行启动应用程序,也尝试了activator-jvm debug 9999~run,然后从Eclipse开始,我像往常一样将调试器连接到端口9999,到目前为止还不错,调试工作正常,尽管有点慢,但这似乎是正常的 当我在Eclipse上编辑任何java文件时,问题就开始了,sav

我在调试Play Framework应用程序(特别是代码热交换)时遇到了一个噩梦。我使用的是Activator1.3.2的最新版本,我使用的是Java而不是Scala

我使用activator-jvm debug 9999运行启动应用程序,也尝试了activator-jvm debug 9999~run,然后从Eclipse开始,我像往常一样将调试器连接到端口9999,到目前为止还不错,调试工作正常,尽管有点慢,但这似乎是正常的

当我在Eclipse上编辑任何java文件时,问题就开始了,save Play从不接受更改,代码热交换也不会工作,从这一点上看,Play似乎停止了等待,因为我所有的REST调用都超时了。 如果我从Eclipse停止调试器,从这个状态开始播放恢复,热交换开始,我可以再次进行REST调用。如果我再次附加调试器,我通常可以再次调试,但这并不总是有效的

这只发生在调试模式下,如果我使用activator运行,一切都会正常运行。如果我在调试模式下运行,但从未将调试器附加到它,那么一切都会正常运行,问题似乎只有在附加了调试器的情况下才会出现


所以我实际上无法进行任何编码,因为调试几乎是不可能的,我想知道播放是否如此不稳定,或者是否存在一些已知的问题。我在没有任何运气的情况下尽了最大努力搜索类似问题。

信息如此之少,很难弄清楚发生了什么,但我通常的调试工作流(没有热交换问题)是:

$ activator -jvm-debug # 9999 is the default port, you can omit it
[myapp] $ run

在那之后,我只连接Eclipse调试器,没有进一步的问题。

我就是这么做的,我尝试过这种方法,也遇到了同样的问题。我不确定我能提供更多的信息。没有什么奇怪的事情发生,调试根本不起作用。是否有任何方法可以发挥作用,输出一些详细的可用日志,这可能有助于检测可能存在的问题?您是否事先尝试过清理/编译/运行代码?不管怎么说,每次我玩游戏时都没有进行代码交换,这是因为我的代码/设置中存在一些深层次的错误,比如运行时类路径问题,或者当我以某种方式用断点或其他什么东西暂停代码交换线程时。是的,当然,没有任何区别。如果我从未在正常模式下连接调试器或启动play,那么我的代码或设置中不会出现任何错误,一切都会按预期进行。只有在调试器会话启动后,事情才会变得奇怪。