Determining location of JVM executable during runtime

后端 未结 5 1182
挽巷
挽巷 2020-12-18 19:07

How does one obtain the location of the executable of the currently running JVM during runtime? I would like to instantiate another JVM as a subprocess using the ProcessBuil

5条回答
  •  夕颜
    夕颜 (楼主)
    2020-12-18 19:58

    You could always just use os.name to check if the user is running Windows or not. That'll work on OS X, Linux and Windows at

    String jvm_location;
    if (System.getProperty("os.name").startsWith("Win")) {
        jvm_location = System.getProperties().getProperty("java.home") + File.separator + "bin" + File.separator + "java.exe";
    } else {
        jvm_location = System.getProperties().getProperty("java.home") + File.separator + "bin" + File.separator + "java";
    }
    

提交回复
热议问题