0

想象一下: 两个 java 项目在 JDK1.5 和 JDK1.6 上工作 两个在 JDK 1.7 上工作。如何获取正在运行的 jvm 名称、pid 和项目名称就可以了。

结果应该看起来像:

pid 1234, projec_tname prj1, java_version JDK1.6

pid 4354, projec_tname prj2, java_version JDK1.5

pid 6234, projec_tname prj3, java_version JDK1.7

pid 9034, projec_tname prj4, java_version JDK1.7

中的解决方案Is there a Java library that search for JVMs on the current machine? 是在当前机器中找到未运行的 JDK。这对我的问题没有帮助。有任何想法吗?

4

1 回答 1

1

您正在寻找这个 API:http ://docs.oracle.com/javase/7/docs/jdk/api/attach/spec/

您必须将 tools.jar 添加到您的类路径中。

这是开始的方法:VirtualMachine.list()

id()s 是特定于提供者的,但它通常是一个进程 ID。

于 2013-08-29T11:16:37.507 回答