我在Eclipse中以调试模式启动了一个Java程序,现在我需要该进程的PID以生成Jmap快照。我尝试使用以下命令:
ps aux | grep 'eclipse'
ps aux | grep 'myServerName'
但是没有找到该PID的机会。
(注:PID指进程ID)path
中包含 java/bin
,那么你可以使用 Java PS 工具: jps -l
输出:
17623 com.intellij.idea.Main
29003 sun.tools.jps.Jps
第一列是进程 ID。ps aux | grep java
命令,应该能显示它。这现在由 Eclipse 直接支持(2022 年 2 月的 4.23 版本,6 年后)
Eclipse 调试框架现在可以显示已启动进程的进程 ID(pid)。
如果具体的调试器实现支持,pid 将在控制台视图描述和进程属性页面中显示。
这对于所有使用或扩展 org.eclipse.debug.core.model.RuntimeProcess
的进程应该可以直接使用,并且可以通过指定 IProcess.ATTR_PROCESS_ID
进程属性轻松添加到其他进程中。
此外,Java 调试器现在在调试视图中的进程元素中显示进程 ID。
ps aux | less
命令,并浏览其内容。然后,当你找到所需的进程时,可能会得到匹配模式。另外,@SamuelPeter提供的建议似乎非常有用,可以减少要检查的行数。 - fedorqui