我正在调试Play Framework应用程序,特别是代码热交换。我正在使用最新版本(使用激活器1.3.2),我正在开发Java而不是Scala。
我使用“activator -jvm-debug 9999 run”启动应用程序(也试过“activator -jvm-debug 9999~run”)然后从Eclipse我将调试器像往常一样连接到端口9999并且到目前为止一直很好,调试工作正常(即使有点慢,但Play似乎是正常的)。
一旦我在Eclipse上编辑任何java文件就会出现问题并且保存Play永远不会接收更改并且代码热插拔将无法正常工作,从这一点开始,Play似乎停止等待某些内容,因为我所有的REST调用时间出。 如果我从Eclipse停止调试器,则从此状态恢复播放并开始热交换,我可以再次进行REST调用。如果我再次附加调试器,我通常可以再次调试,但这并不总是有效。
这只发生在调试模式下,如果我使用“激活器运行”,一切运行正常。如果我在调试模式下运行,但从不将调试器连接到它,一切运行正常,只有连接了调试器时才会出现问题。
所以我实际上无法进行任何编码,因为调试几乎是不可能的,我想知道Play是不稳定还是有一些已知的问题。我尽力寻找类似的问题而没有任何运气。
答案 0 :(得分:0)
很难用如此少的信息弄清楚发生了什么,但我通常的调试工作流程没有热插拔问题,是:
$ activator -jvm-debug # 9999 is the default port, you can omit it
[myapp] $ run
之后,我只是连接Eclipse调试器,没有其他问题。