我想获取有关我的操作系统中其他正在运行的进程的信息。
(两件事,处理“名称”和“路径”。)
现在,我正在使用像“ps命令”之类的linux命令。
Process process = Runtime.getRuntime().exec("ps x")
但是因为我也想在Windows中运行它,所以我在搜索其他功能可以在Windows和Linux中使用。
有任何Java类或函数没有os依赖吗?
最佳答案
如果您愿意尽早升级,则通过JEP 102在Java 9中更新的Process API将为您提供帮助...这提供了平台不可访问的对过程树的访问权限...
参见ProcessHandle.allProcesses()
例子
ProcessHandle.allProcesses().forEach(processHandle ->
System.out.println("PID: " + processHandle.getPid() +
", command: " + processHandle.info().command().orElse("Unknown")));