29

似乎在 Eclipse 中,如果您想将 ctrl+c 发送到您不能的进程。控制台上的终止按钮只是杀死正在运行的进程而不运行关闭挂钩。我知道java本身不允许向另一个进程发送信号。

然而,intellij idea 的“停止”按钮旁边似乎确实有一个“退出”按钮,它确实允许关闭挂钩运行。

有人可以告诉我intellij是如何做到的吗?

我也需要将 ctrl+c 从我的程序发送到另一个 java 进程。

4

2 回答 2

4

Intellij 使用原生库在 Windows 上发送信号,在 Unix 上使用 kill 命令。
这是一个源代码

您是否说过您不能在 Java 中发送信号。所以你需要执行本机代码。
看这里的问题

于 2013-04-19T19:17:39.837 回答
1

据我了解,这只发生在带有 Eclipse 的 Windows 上。另见:https ://bugs.eclipse.org/bugs/show_bug.cgi?id=38016

至于只是测试你的钩子,你可以通过调用 System.exit() 来做到这一点,然后我想你的用户不会使用 Eclipse 运行应用程序,所以可以指望它为他们工作。

于 2010-03-04T16:31:18.253 回答