在2.3版之前,在控制台窗口中启动了Grails应用程序,其中“ run-app ”(开发模式)可以通过 Ctrl-C 终止。它不再适用于Grails 2.3,键击被简单地忽略了。有“ stop-app ”命令,但它也不会终止正在运行的应用程序。
我可以通过终止控制台窗口来终止应用程序,但我不想这样做,因为在这种情况下我将丢失打印到该控制台的所有调试输出。
答案 0 :(得分:1)
我的问题是通过从Grails 2.3.4 升级到 2.3.7 来解决的。在Grails 2.3.7 Ctrl-C ," run-app "和" 停止应用"表现得像记录在案。我认为这个案子已经结束了。
(我不确定这是否有资格作为答案,但我觉得这个问题值得某种形式的封闭......)
答案 1 :(得分:0)
来自http://grails.org/doc/2.3.x/guide/commandLine.html#forkedMode “自Grails 2.3以来,run-app,run-war,test-app和console命令现在在分叉的JVM中执行,以便将构建类路径与运行时类路径隔离开来。”
如果使用这些默认设置,您会注意到会创建两个java.exe进程,而CTRL-C只会杀死其中一个。
我自己也注意到了这一点。只需在BuildConfig.groovy
中注释掉以下行 run: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256],