想象一下:两个Java项目适用于JDK1.5和JDK1.6 其中两个是关于JDK 1.7的。 如何获取正在运行的jvm名称,pids和项目名称。
结果应该看起来像:
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 searches for JVMs on the current machine?中的解决方案是在当前机器中找不到正在运行的JDK。我的问题没有帮助。有什么想法吗?
答案 0 :(得分:1)
您正在寻找此API:http://docs.oracle.com/javase/7/docs/jdk/api/attach/spec/
您必须将tools.jar添加到类路径中。
这是开始的方法:VirtualMachine.list()
id()是特定于提供者的,但它通常是进程ID。